opencv实现类似MATLAB中find功能的方法

来源:互联网 发布:阿里云 域名解析到网址 编辑:程序博客网 时间:2024/04/30 20:13

在网上找类似find功能的C++实现时,发现一个网站的提供了类似解决方法,网址如下:

http://stackoverflow.com/questions/10597107/opencv-function-similar-to-matlabs-find

尝试了其中的第二种,记录如下,不像MATLAB中能直接找出索引,此处只是用mat数据做整体的计算

int main(int argc)  {      char *in1 = "E:\\1.jpg";IplImage* src;        src = cvLoadImage( in1);cv::Mat src0 = cv::cvarrToMat(src);cv::Mat src1;    cv::cvtColor(src0, src1, CV_RGB2GRAY);cv::Mat src3;src1.copyTo(src3);cv::Mat src2;// src2= (src1 <220 & src3 > 100); // 条件不能是两个变量,即使大小相同src2= (src1 <220 & src1 > 100);//可以通过    cvNamedWindow( "origin", 0 ); cv::imshow( "origin", src1 );     cvNamedWindow( "compare", 0 ); cv::imshow( "compare", src2 );     cvWaitKey(0);        cvReleaseImage( &src );      cvDestroyAllWindows();        return 0;  }
输出结果





1 0