Tag: opencv

检测Hough圈子android

我正在尝试使用android检测圈子。 我成功地实现了检测线算法,但在尝试绘制hough circle algoritm时没有显示任何内容。 这是我的代码: Mat thresholdImage = new Mat(getFrameHeight() + getFrameHeight() / 2, getFrameWidth(), CvType.CV_8UC1); mYuv.put(0, 0, data); Imgproc.cvtColor(mYuv, destination, Imgproc.COLOR_YUV420sp2RGB, 4); Imgproc.cvtColor(destination, thresholdImage, Imgproc.COLOR_RGB2GRAY, 4); Imgproc.GaussianBlur(thresholdImage, thresholdImage, new Size(9, 9), 2, 2 ); Mat circles = new Mat(); Imgproc.HoughCircles(thresholdImage, circles, Imgproc.CV_HOUGH_GRADIENT, 1d, (double)thresholdImage.height()/70, 200d, 100d); Log.w(“circles”, circles.cols()+””); for (int x = 0; x […]

在纯Java中学习JavaCV

我正在努力学习JavaCV。 众所周知,缺乏关于这一主题的教育材料是一个非常大的问题。 在JavCV主页中,他们为“OpenCV CookBook”一书中的C ++示例提供了大量示例。 但情况是,他们不是Java,他们在SCALA !!!! 现在我已经疯了! 我知道很多例子都在网上,但我想从头开始学习它,然后我才能正确地做到。 “OpenCV CookBook”是一本非常好的书,但它完全是关于C ++中的OpenCV,而不是关于Java的。 有人请帮我找个更好的学习JavaCV的地方。 提供我,URL,书籍等等。但它必须是在100%Java中学习JavaCV,而不是在Scala,C ++,C或其他任何语言中学习! 请帮忙!

试图使用OpenCV可移植的java应用程序(Executable Jar)。 得到不满意的链接错误

我已经申请从网络摄像头抓取video并使用OpenCV和JavaCV检测动作。 我正在尝试使用eclipse导出为可执行jar。 该程序在eclipse中运行正常,就像我编写程序的计算机上的exe jar一样。 我想要完成的是让exe jar运行在没有安装OpenCV的计算机上。 基本上我会考虑一个便携式应用程序。 当我在除了JRE之外没有安装任何东西的另一台计算机上运行exe jar时,我得到了下面看到的不满意的链接错误。 Exception in thread “Video Thread” java.lang.UnsatisfiedLinkError: C:\Users\JohnD\AppData\Local\Temp\javacpp91062429652918\jniopencv_core.dll: Can’t find dependent libraries at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary1(Unknown Source) at java.lang.ClassLoader.loadLibrary0(Unknown Source) at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.load0(Unknown Source) at java.lang.System.load(Unknown Source) at com.googlecode.javacpp.Loader.loadLibrary(Loader.java:566) at com.googlecode.javacpp.Loader.load(Loader.java:489) at com.googlecode.javacpp.Loader.load(Loader.java:431) at com.googlecode.javacv.cpp.opencv_core.(opencv_core.java:136) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at com.googlecode.javacpp.Loader.load(Loader.java:453) at […]

OpenCV Android Track激光点

我正试图在Android设备上使用OpenCV跟踪激光点。 我想用这个激光点画在canvas上,canvas放在我的摄像头视图上。 我已经将我的camerapreview转换为HSV色彩空间并使用阈值滤波(仅在H和V通道上)来分离我的激光点。 这非常有效。 public Mat onCameraFrame(CvCameraViewFrame cvf) { // Grab the video frame cvf.rgba().copyTo(originalFrame); cvf.rgba().copyTo(frame); // Convert it to HSV Imgproc.cvtColor(frame, frame, Imgproc.COLOR_RGB2HSV); // Split the frame into individual components (separate images for H, S, // and V) mChannels.clear(); Core.split(frame, mChannels); // Split channels: 0-H, 1-S, 2-V frameH = mChannels.get(0); // frameS = mChannels.get(1); […]

如何在java opencv中执行联合操作

我需要编写一个等效的Java OpenCV代码作为这个C++代码 Mat1b mask1, mask2; inRange(hsv, Scalar(0, 70, 50), Scalar(10, 255, 255), mask1); inRange(hsv, Scalar(170, 70, 50), Scalar(180, 255, 255), mask2); Mat1b mask = mask1 | mask2; 当我试图使用| 运算符会导致错误。 Mat mask1 = new Mat(); Mat mask2 = new Mat(); Core.inRange(hsv, new Scalar(0, 70, 50), new Scalar(10, 255, 255), mask1); Core.inRange(hsv, new Scalar(170, 70, 50), new […]

如何在镜像(Android)中显示OpenCV JavaCameraView前置摄像头?

我目前正在试验openCV的android中面部检测的java示例。 但是,相机创建的视图不是镜像。我尝试将android:screenOrientation设置为reverseLandscape但它不起作用。 我想尝试实现这个,有什么建议吗? 布局代码: 实例化 private CameraBridgeViewBase mOpenCvCameraView; 在OpenCV加载 mOpenCvCameraView.setCameraIndex(1); mOpenCvCameraView.enableView(); onCreate()方法 mOpenCvCameraView = findViewById(R.id.fd_activity_surface_view); mOpenCvCameraView.setCvCameraViewListener(this); mOpenCvCameraView没有包含setDisplayOrientation()方法,而setRotation(180)则返回黑色显示。

Android Studio中的ndk.dir错误

我试图使用opencv库,所以我在Android Studio中导入了一个项目,当我尝试运行它时出现了这个错误: 错误:任务执行失败’:openCVSamplefacedetection:compileDebugNdk’。 NDK未配置。 从http://developer.android.com/tools/sdk/ndk/下载NDK。然后在local.properties中添加ndk.dir = path /到/ ndk。 (在Windows上,确保转义反斜杠,例如C:\ ndk而不是C:\ ndk) 所以我下载了ndk,并将此行添加到local.properties文件中,该文件变为: sdk.dir=C\:\\Users\\skoon\\AppData\\Local\\Android\\sdk ndk.dir=C\:\\Users\\skoon\\AppData\\Roaming\\IDM\\android-ndk-r10d 但我仍然有这个错误,我不明白: 错误:任务执行失败’:openCVSamplefacedetection:compileDebugNdk’。 com.android.ide.common.internal.LoggedErrorException:无法运行命令:C:\ Users \ skoon \ AppData \ Roaming \ IDM \ android-ndk-r10d \ ndk-build.cmd NDK_PROJECT_PATH = null APP_BUILD_SCRIPT = C:\ Users \ skoon \ Downloads \ Compressed \ OpenCV-2.4.10-android-sdk \ OpenCV-2.4.10-android-sdk \ samples \ face-detection \ openCVSamplefacedetection \ […]

拼接2张图片(OpenCV)

我正在尝试使用OpenCV Java API将两个图像拼接在一起。 但是,我得到错误的输出,我无法解决问题。 我使用以下步骤:1。检测function2.提取function3.匹配function。 4.找到单应性5.找到透视变换6.扭曲透视7.’缝合’2个图像,组合成图像。 但在某个地方,我出错了。 我认为这是我梳理2张图片的方式,但我不确定。 我在2张图片之间获得了214个不错的function匹配,但无法拼接它们? public class ImageStitching { static Mat image1; static Mat image2; static FeatureDetector fd; static DescriptorExtractor fe; static DescriptorMatcher fm; public static void initialise(){ fd = FeatureDetector.create(FeatureDetector.BRISK); fe = DescriptorExtractor.create(DescriptorExtractor.SURF); fm = DescriptorMatcher.create(DescriptorMatcher.BRUTEFORCE); //images image1 = Highgui.imread(“room2.jpg”); image2 = Highgui.imread(“room3.jpg”); //structures for the keypoints from the 2 […]

Android和OpenCV – 应用程序在UI更改时崩溃

我正在使用OpenCV人脸检测制作应用程序。 我想在相机图像中检测到面部时对UI进行一些更改。 布局分为两部分,左侧是一些文本和右侧的摄像机图像。 我想在检测到脸部时更改文字颜色。 我在onCameraFrame()方法中检测到了没有问题的面,但如果我尝试从此方法更改UI元素,则应用程序崩溃。 以下是它们的外观。 / *不是真正的代码,只是示例* / public class MyClass extends Activity implements CvCameraViewListener { private CameraBridgeViewBase mOpenCvCameraView; private TextView myTextElement; private FaceLocator faceLocator; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_myclass); myTextElement = (TextView) findViewById(R.id.text_view); mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.my_class_face_detector_layout); mOpenCvCameraView.setVisibility(SurfaceView.VISIBLE); mOpenCvCameraView.setCvCameraViewListener(this); mOpenCvCameraView.enableView(); } @Override public Mat onCameraFrame(Mat inputFrame) { if (faceLocator != null) […]

导出的(Eclipse)可执行jar文件中的UnsatisfiedLinkError

从Eclipse执行时,代码工作正常。 我正在使用OpenCV 2.4.11和JavaFX for UI。 当我从Eclipse导出可执行Jar并从cmd运行它时,我得到以下exception: 我在SO和OpenCV论坛( 1,2,3,4 )上关注了许多post,但是,没有一个答案似乎对我有所帮助。 我已经将OpenCV jar添加为库,而Native Library链接到/ build / java / x64,如SO答案中所建议的那样。 System.loadLibrary(Core.Native_Library_Name)发生exception,我检查了Native_Library_Name,OpenCV版本与我在项目中导入的版本相同。 public class CustomFrame extends Application{ @Override public void start(Stage primaryStage){ Group root = new Group(); Canvas canvas = new Canvas(1440, 840); ImageView imageView = new ImageView(); imageView.setFitHeight(canvas.getHeight()); imageView.setFitWidth(canvas.getWidth()); new FrameController().startCamera(imageView); root.getChildren().addAll(imageView, canvas); primaryStage.setScene(new Scene(root)); primaryStage.show(); } public […]