int _tmain(int argc, _TCHAR* argv[]) { //VideoCapture vc("input.avi"); //VideoWriter vw; //vw.open( ".//output.avi", // 输出视频文件名 // (int)vc.get( CV_CAP_PROP_FOURCC ), // 也可设为CV_FOURCC_PROMPT,在运行时选取 // (double)vc.get( CV_CAP_PROP_FPS ), // 视频帧率 // cv::Size( (int)vc.get( CV_CAP_PROP_FRAME_WIDTH ), (int)vc.get( CV_CAP_PROP_FRAME_HEIGHT ) ), // 视频大小 // true ); // 是否输出彩色视频 //Mat frame; //if (!vc.isOpened()) //{ // cout<<"can not find file"<<endl; // return -1; //} //////////////////////// //vc>>frame; //int fnum=1; //Mat gray,edge,dst; //while (!frame.empty()) //{ // cvtColor(frame, gray, CV_BGR2GRAY); // imshow("win1",gray); // threshold(gray,edge,70,255,1); // imshow("win2",edge); // //vector<vector<Point>> contours; // //vector<Vec4i>hierarchy; // //int idx=0; // //findContours(edge,contours,hierarchy, CV_RETR_CCOMP, CV_CHAIN_APPROX_SIMPLE); // //for ( ; idx >= 0; idx = hierarchy[idx][0]) // //{ // // Scalar color( (rand()&255), (rand()&255), (rand()&255) ); // // drawContours( dst, contours, idx, color, 1, 8, hierarchy ); // //} // if (waitKey(1)>0) // { // break; // } // //vw<<frame; // fnum++; // vc>>frame; //} /////////////////////////////////////// //int num=20; //均值力度; //Mat src = imread("Airplane.jpg",1); ////Mat src1u[3]; ////split(src,src1u); ////int width=src.cols; ////int heigh=src.rows; ////Mat img; ////src.copyTo(img); ////Point center(width/2,heigh/2); ////for (int y=0; y<heigh; y++) ////{ //// uchar *imgP = img.ptr<uchar>(y); //// for (int x=0; x<width; x++) //// { //// int R = norm(Point(x,y)-center); //// double angle = atan2((double)(y-center.y),(double)(x-center.x)); //// int tmp0=0,tmp1=0,tmp2=0; //// for (int i=0;i<num;i++) //均值力度; //// { //// angle+=0.01; //0.01控制变化频率,步长 //// int newX = R*cos(angle) + center.x; //// int newY = R*sin(angle) + center.y; //// if(newX<0)newX=0; //// if(newX>width-1)newX=width-1; //// if(newY<0)newY=0; //// if(newY>heigh-1)newY=heigh-1; //// tmp0 += src1u[0].at<uchar>(newY,newX); //// tmp1 += src1u[1].at<uchar>(newY,newX); //// tmp2 += src1u[2].at<uchar>(newY,newX); //// } //// imgP[3*x]=(uchar)(tmp0/num); //// imgP[3*x+1]=(uchar)(tmp1/num); //// imgP[3*x+2]=(uchar)(tmp2/num); //// } ////} //imshow("径向模糊",img); //waitKey(); //imwrite("D:/径向模糊(旋转).jpg",img); ///////////////////////////////////////////// Mat src = imread("Airplane.jpg",1); imshow("win1",src); IplImage * img; img= &src.operator IplImage(); //Mat gray; //cvtColor(src,gray,1,0); //imshow("win3",src); cvNamedWindow("win2",1); cvShowImage("win2",img); Mat gray(img,0); imshow("win4",gray); waitKey(); return 0; } |
|