OpenCV灰度化图像

OpenCV2版本很多函数发生了变化,例如二值化,其示例:

void CmyMFC2Dlg::OnBnClickedButton1()
{
	// TODO: Add your control notification handler code here
	// 读入一张图片  
	Mat mat=imread("test.jpg");  
	Mat mat2;  
	//cvCvtColor(mat,mat2, CV_BGR2GRAY);  
	cvtColor(mat,mat2, CV_BGR2GRAY);
	/*
	imshow("o",mat0);
	imshow("r",mat);  */
	CDC* pDC = GetDlgItem(pic)->GetDC();
	HDC hDC = pDC->GetSafeHdc();
	IplImage img = mat;
	CvvImage cimg;
	cimg.CopyOf( &img );
	CRect rect;
	GetDlgItem(pic)->GetClientRect(&rect);
	cimg.DrawToHDC(hDC, &rect);
	ReleaseDC( pDC );

	CDC* pDC2 = GetDlgItem(pic2)->GetDC();
	HDC hDC2 = pDC->GetSafeHdc();
	IplImage img2 = mat2;
	CvvImage cimg2;
	cimg2.CopyOf( &img2 );
	CRect rect2;
	GetDlgItem(pic2)->GetClientRect(&rect2);
	cimg2.DrawToHDC(hDC2, &rect2);
	ReleaseDC( pDC2 );

	/*
	CDC* pDC = GetDlgItem(pic)->GetDC();
	HDC hDC = pDC->GetSafeHdc();
	//	CDC* pDC2 = GetDlgItem(IDC_STATIC2)->GetDC();
	HDC hDC2 = pDC->GetSafeHdc();
	IplImage img = mat;
	//IplImage img2 = mat0;
	CvvImage cimg;
	//CvvImage cimg2;
	cimg.CopyOf( &img );
	//cimg.CopyOf( &img2 );
	CRect rect;
	//CRect rect2;
	GetDlgItem(IDC_STATIC)->GetClientRect(&rect);
	//GetDlgItem(IDC_STATIC2)->GetClientRect(&rect2);
	cimg.DrawToHDC(hDC, &rect);
	//cimg2.DrawToHDC(hDC2, &rect2);
	ReleaseDC( pDC );
	//ReleaseDC( pDC2 );

	*/

}

结果:


可以看到,函数有所变化。

参考文献:

1.OpenCV 2.3.x中文文档。http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/user_guide/ug_mat.html

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
引用\[1\]中的代码是使用OpenCV库对灰度图像进行二值化的示例代码。在这段代码中,首先将彩色图像转换为灰度图像,然后使用阈值函数将灰度图像转换为二值图像。阈值函数将图像中大于阈值的像素点设为0(白色部分),小于阈值的像素点设为1(黑色部分)。最后,将二值图像保存并显示出来。 引用\[2\]中的代码也是使用OpenCV库对图像进行二值化的示例代码。在这段代码中,首先加载图像,然后将图像转换为灰度图像。接下来,使用OTSU算法进行自动阈值化,将灰度图像转换为二值图像。最后,显示二值图像。 引用\[3\]中的代码是使用Python的OpenCV库对图像进行二值化的示例代码。在这段代码中,首先加载图像,然后将图像转换为灰度图像。接下来,遍历每个像素点,根据设定的阈值将像素点的灰度值设置为0或255,从而实现图像的二值化。最后,显示二值化后的图像。 综上所述,无论是使用C++还是Python,通过OpenCV库都可以对灰度图像进行二值化处理。 #### 引用[.reference_title] - *1* [opencv图像处理之灰度化和二值化](https://blog.csdn.net/AndroidAlvin/article/details/103307360)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Opencv-图像灰度化、二值化](https://blog.csdn.net/u013828787/article/details/22859043)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [OpenCV图像处理----图像的二值化](https://blog.csdn.net/bjsyc123456/article/details/124781982)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

superdont

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值