全方位图像极坐标遍历

来源:互联网 发布:淘宝所有类目列表 编辑:程序博客网 时间:2024/05/05 14:15
#include"stdafx.h"void on_mouse( int event, int x, int y, int flags, void* ustc)  ;Mat MapSearch(Mat src);void main(){Mat image=imread("G:\\167.jpg",0);Mat output=MapSearch(image);imshow("输入图片",output);cvSetMouseCallback( "输入图片", on_mouse, 0 ); waitKey(0);}void on_mouse( int event, int x, int y, int flags, void* ustc)    {        CvFont font;        cvInitFont(&font, CV_FONT_HERSHEY_SIMPLEX, 0.5, 0.5, 0, 1, CV_AA);                    if( event == CV_EVENT_LBUTTONDOWN )        {            CvPoint pt = cvPoint(x,y);            char temp[16];            sprintf(temp,"(%d,%d)",pt.x,pt.y);            cout<<temp<<endl;      }     } Mat MapSearch(Mat src){double β=0.36;//遍历的角度步长double ratioH=1;//遍历的极坐标步长double tempJ = 0;//极径double angleX =0;//极角double centerX=320;double centerY=234;double innerRadius=50;//内径double outerRadius=228;//外径int x=0;//x坐标int y=0;//y坐标for(double angleX=0;angleX<360-1;angleX+=0.3)for(int tempJ=innerRadius;tempJ<outerRadius-1;tempJ+=ratioH){x=tempJ*cos(angleX)+centerX;y=tempJ*sin(angleX)+centerY;src.at<uchar>(y,x)=255;}return src;}

0 0
原创粉丝点击