我克隆了https://github.com/niw/iphone_opencv_test并试图替换
#import <opencv2/imgproc/imgproc_c.h>
#import <opencv2/objdetect/objdetect.hpp>
Run Code Online (Sandbox Code Playgroud)
同
#import <opencv2/opencv.hpp>
Run Code Online (Sandbox Code Playgroud)
在OpenCVTestViewController.m文件中.但是XCode提出了以下错误:
iphone_opencv_test/opencv_device/include/opencv2/opencv.hpp:55:10: fatal error: 'opencv2/calib3d/calib3d.hpp' file not found [2]
#include "opencv2/calib3d/calib3d.hpp"
Run Code Online (Sandbox Code Playgroud)
所以,我试图#include "opencv2/calib3d/calib3d.hpp"从opencv.hpp文件中删除该行.抛出以下错误:
iphone_opencv_test/opencv_device/include/opencv2/ml/ml.hpp:2075:10: fatal error: 'map' file not found [2]
#include <map>
Run Code Online (Sandbox Code Playgroud)
我也尝试将.m更改为.mm,但这似乎是徒劳的.哪里我错了?
我正在使用AVFoundation捕获视频以及OpenCV在iPhone上进行图像处理.但是,我正在考虑使用OpenGL着色器在192x144灰度图像上进行计算(卷积).
我的问题是:使用OpenGL是否有意义,我的意思是:不会渲染到IplImage(甚至可能吗?)太慢了?或者,有没有办法加速卷积?
编辑
在OpenCV中,我正在使用
IplConvKernel* kernel = cvCreateStructuringElementEx(3, 3, 1, 1, CV_SHAPE_CROSS, NULL);
Run Code Online (Sandbox Code Playgroud)
与cvMorphologyEx.
我想识别Java套接字中的数据流结束.当我运行下面的代码时,它只是卡住并继续运行(它停留在值10).
我也希望程序下载二进制文件,但最后一个字节总是不同的,所以我不知道如何停止while(实用).
String host = "example.com";
String path = "/";
Socket connection = new Socket(host, 80);
PrintWriter out = new PrintWriter(connection.getOutputStream());
out.write("GET "+ path +" HTTP/1.1\r\nHost: "+ host +"\r\n\r\n");
out.flush();
int dataBuffer;
while ((dataBuffer = connection.getInputStream().read()) != -1)
System.out.println(dataBuffer);
out.close();
Run Code Online (Sandbox Code Playgroud)
谢谢你的任何提示.
iphone ×2
opencv ×2
convolution ×1
eof ×1
http ×1
java ×1
objective-c ×1
opengl-es ×1
performance ×1
sockets ×1