例如,谁能告诉我加载和处理图像的两种方式有什么不同。首先:
#include <iostream>
#include <opencv2\opencv.hpp>
using namespace std;
using namespace cv;
void main()
{
Mat img = imread("maria.jpg", CV_LOAD_IMAGE_COLOR);
if (img.empty())
{
cout<<"cannot load the image" <<endl;
}
GaussianBlur( gray, gray, Size(9, 9), 2, 2 );
namedWindow("Maria", CV_WINDOW_AUTOSIZE);
imshow("Maria",img);
}
第二:
#include <cv.h>
#include <highgui.h>
#include <math.h>
int main(int argc, char** argv)
{
IplImage* img = cvLoadImage( "maria.jpg", 1 );
cvSmooth(img, img, CV_GAUSSIAN, 5, 5);
cvNamedWindow("maria", 1 );
cvShowImage("maria", img );
}
我有一些第二种形式的代码,我想用第一种形式编写它,那么我怎样才能找到相应的命令?你能帮我在第一种形式上写这段代码吗(C++ API)
IplImage* GetThresholdedImage(IplImage* imgHSV){
IplImage* imgThresh=cvCreateImage(cvGetSize(imgHSV),IPL_DEPTH_8U, 1);
cvInRangeS(imgHSV, cvScalar(121,72,89), cvScalar(256,256,256), imgThresh); //RED
return imgThresh;
}
谢谢你的帮助。