测试

来源:互联网 发布:雅思培训网络课程 编辑:程序博客网 时间:2024/06/06 04:28

1

2

#include <opencv2/opencv.hpp>  #include <opencv2/legacy/compat.hpp> #include <fstream>using namespace std;  #pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")  void mirror_horizontally_image(IplImage *src,IplImage *dst) //实现水平镜像变换{int M,N;M=src->height;N=src->width;int i=0,j=0;double temp1;CvScalar s1;for(i=0;i<M;i++){for(j=0;j<N;j++){temp1 = cvGet2D(src,i,N-1-j).val[0];s1.val[0]=temp1;cvSet2D(dst,i,j,s1);}}}int main(){IplImage *pSrcImage = cvLoadImage("lena_gray.png", CV_LOAD_IMAGE_UNCHANGED);  IplImage *pOutImage = cvCreateImage(cvGetSize(pSrcImage), IPL_DEPTH_8U,1);mirror_horizontally_image(pSrcImage,pOutImage);const char *pstrWindowsATitle = "原图";  const char *pstrWindowsBTitle = "变换后的图"; //创建窗口      cvNamedWindow(pstrWindowsATitle, CV_WINDOW_AUTOSIZE);      cvNamedWindow(pstrWindowsBTitle, CV_WINDOW_AUTOSIZE);//在指定窗口中显示图像      cvShowImage(pstrWindowsATitle, pSrcImage);    cvShowImage(pstrWindowsBTitle, pOutImage);    //等待按键事件      cvWaitKey();      cvDestroyWindow(pstrWindowsATitle);  cvDestroyWindow(pstrWindowsBTitle); cvReleaseImage(&pSrcImage);  cvReleaseImage(&pOutImage);    return 0;}

3

#include <opencv2/opencv.hpp>  #include <opencv2/legacy/compat.hpp> #include <fstream>using namespace std;  #pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")  void mirror_vertically_image(IplImage *src,IplImage *dst) //实现竖直镜像变换{int M,N;M=src->height;N=src->width;int i=0,j=0;double temp1;CvScalar s1;for(i=0;i<N;i++){for(j=0;j<M;j++){temp1 = cvGet2D(src,N-1-j,i).val[0];s1.val[0]=temp1;cvSet2D(dst,j,i,s1);}}}int main(){IplImage *pSrcImage = cvLoadImage("lena_gray.png", CV_LOAD_IMAGE_UNCHANGED);  IplImage *pOutImage = cvCreateImage(cvGetSize(pSrcImage), IPL_DEPTH_8U,1);mirror_vertically_image(pSrcImage,pOutImage);const char *pstrWindowsATitle = "原图";  const char *pstrWindowsBTitle = "变换后的图"; //创建窗口      cvNamedWindow(pstrWindowsATitle, CV_WINDOW_AUTOSIZE);      cvNamedWindow(pstrWindowsBTitle, CV_WINDOW_AUTOSIZE);//在指定窗口中显示图像      cvShowImage(pstrWindowsATitle, pSrcImage);    cvShowImage(pstrWindowsBTitle, pOutImage);    //等待按键事件      cvWaitKey();      cvDestroyWindow(pstrWindowsATitle);  cvDestroyWindow(pstrWindowsBTitle); cvReleaseImage(&pSrcImage);  cvReleaseImage(&pOutImage);    return 0;}

4


0 0
原创粉丝点击