µ±Ç°Î»ÖãºC++¼¼ÊõÍø > ×ÊѶ > opencv±à³Ì£º10 ͼÏñˮƽ¾µÏñºÍÊúÖ±¾µÏñ

opencv±à³Ì£º10 ͼÏñˮƽ¾µÏñºÍÊúÖ±¾µÏñ

¸üÐÂʱ¼ä£º2016-04-07 23:11:17ä¯ÀÀ´ÎÊý£º1+´Î

   Í¼Ïñ¾µÏñ±ä»»·ÖΪˮƽ¾µÏñºÍÊúÖ±¾µÏñ¡£Ë®Æ½¾µÏñÊǽ«Í¼Ïñ×ó°ë²¿·ÖºÍÓҰ벿·ÖÒÔͼÏñÊúÖ±ÖÐÖáÏßΪÖÐÐÄÖá½øÐжһ»£»¶øÊúÖ±¾µÏñÊǽ«Éϰ벿·ÖºÍÏ°벿·ÖÒÔͼÏñˮƽÖÐÖáÏßΪÖÐÐÄÖá½øÐжһ»£¬ÈçÏÂͼËùʾ£¬

   ÏÂÃæÊÇ´úÂëʵÏÖ


int main(){
#pragma region ¾µÏñ´¦Àí
/*	Mat image = imread("T1.jpg");
	Mat src=image.clone();
	namedWindow("initial");
	imshow("initial",image);
	waitKey(0);
	int W=image.cols;
	int L=image.rows;

	Vec3b temp;
	//ÊúÖ±¾µÏñ
	for (int x=0;x<W;x++)
	{
		//ÏÂÃæÁ½Öֱ任·½·¨µÄ²»Í¬Ö®´¦ÔÚÓÚ
		//±ä»»·½·¨Ò»
// 		for (int y1=0,y2=L-1;y2-y1>0;y1++,y2--)
// 		{
// 			temp = image.at<Vec3b>(y1,x);
// 			image.at<Vec3b>(y1,x)=image.at<Vec3b>(y2,x);
// 			image.at<Vec3b>(y2,x)=temp;
// 		}
		//±ä»»·½·¨¶þ
		for (int y1=0,y2=L-1;y1<=y2/2;y1++)
		{
			temp = image.at<Vec3b>(y1,x);
			image.at<Vec3b>(y1,x)=image.at<Vec3b>(y2-y1,x);
			image.at<Vec3b>(y2-y1,x)=temp;
		}
	}
	namedWindow("ÊúÖ±¾µÏñ");
	imshow("ÊúÖ±¾µÏñ",image);
	waitKey(0);

	//ˮƽ¾µÏñ
	imshow("src",src);
	waitKey(0);
	for (int y=0;y<L;y++)
	{
		for (int x1=0,x2=W-1;x1<x2;x1++,x2--)
		{
			temp=src.at<Vec3b>(y,x1);
			src.at<Vec3b>(y,x1)=src.at<Vec3b>(y,x2);
			src.at<Vec3b>(y,x2)=temp;
		}
	}
	namedWindow("ˮƽ¾µÏñ");
	imshow("ˮƽ¾µÏñ",src);
	waitKey(0);

	system("pause");
	return 0;
}
   ÐèҪעÒâµÄÊÇ£¬Í¼ÏñÖеãµÄ×ø±êÊÇ´Ó0¿ªÊ¼µÄ£¬ÔÚ±íʾͼÏñµãµÄ×ø±ê·¶Î§ÒÔ¼°È·¶¨±ä»»ÖÐÖáÏßʱ£¬¶¼Òª×¢ÒâÕâÒ»µã¡£ÔÚÊúÖ±¾µÏñ±ä»»Ê±£¬±ä»»ÊÇ°´ÁнøÐеģ¬Ê¹ÓÃÁËÁ½Öֱ任·½·¨£¬Á½ÖÖ·½·¨µÄ²»Í¬ÔÚÓÚÈ·¶¨ÖÐÖáÏߵķ½Ê½ºÍÏ°벿·Ö×ø±êµÄµÄ±íʾ·½Ê½µÄ²î±ð¡£


   µÚÒ»ÖÖ·½·¨ÊÇ·Ö±ðΪÉϰ벿·ÖºÍÏ°벿·Ö¶¨ÒåÒ»¸ö±äÁ¿±íʾy×ø±ê£¬·Ö±ðÊÇ´Ó0µÝÔöºÍ´Ó×îºóÒ»¸öµãµÝ¼õ£¬µ±±íʾÉϰ벿·ÖµÄy×ø±ê´óÓÚÏ°벿·ÖµÄʱºò£¬ËµÃ÷µ½´ïÁËÖÐÖáÏߣ¬Í£Ö¹±ä»»¡£

   µÚ¶þÖÖ·½·¨ÊÇ£¬ÏÈÈ·¶¨ÖÐÖáÏߣ¬µ«ÊÇÆæÊý¸öµãºÍżÊý¸öµãµÄÖÐÖáÏßÊDz»Í¬µÄ¡£¼ÙÉèy1±íʾÁÐÆðʼµãµÄy×ø±ê£¬y2±íʾһÁÐ×îºóÒ»¸öµãµÄy×ø±ê£¬ÓÃy2/2±íʾÖÐÖáÏߣ¬µ±µãÊýΪÆæÊýʱÖÐÖáÏßʱÕýÈ·µÄ£¬¶øµ±µãÊýÊÇżÊýʱȷ¶¨µÄÖÐÖáÏßʱ´íÎóµÄ¡£ÎªÁËÃÖ²¹ÕâÖÖ´íÎó£¬ÔÚµÚ¶þÖÖ·½·¨ÖУ¬Ôڱ任¹ý³ÌÖÐʹÓÃy2-y1È·¶¨Ï°벿·ÖÒª±ä»»µÄµãµÄλÖá£