OpenCV2:第VII章画像処理

I.はじめに

階調(グレースケール画像)、256に黒の間のグレーの色合いに白

 

図RGBの3つの色成分は、800 * 800図ピクセルを想定し、RGBを表す3つの800×800のマトリックスであります

 

 二値化処理設定された閾値は、画素値が閾値(白)になり、画素値が閾値外である0(黒)になります

 

II。グレースケール

1.実装

CV ::マットsrcImage。
CV ::マットsrcGray。
CV :: cvtColor(srcImage、srcGray、CV_RGB2GRAY)。

 

2.原理

(1)浮動小数点演算

グレー= R * 0.3 + G * 0.59 + B * 0.11

(2)メソッド整数

グレー=(R * 30 + G * 59 + B * 11)/ 100

(3)シフト法

 グレー=(R * 76 + G * 151 + B * 28)>> 8。

(4)平均法

グレー=(R + G + B)/ 3

(5)のみの緑を取ります

 グレー= G

 

III。二値化

CV ::マットimgGray。
CV ::マット結果; 

CV ::閾値(imgGray、その結果、100255、CV_THRESH_BINARY)。

 

IV。ノイズに参加

ボイド塩(CV ::マット画像、INT n)が{ 
 
	iは、jはint型。
 
	用(int型のk = 0; K <Nであり、k ++){ 
		I = STD ::ランド()%のimage.cols。//行数
		J =のstd ::ランド()%のimage.rows。//列数
 
		であれば(image.type()== CV_8UC1){ 
			//图像灰度
			image.at <UCHAR>(J、I)= 255。
		} 
		そうであれば(image.type()== CV_8UC3){ 
			//图像彩色
			image.at <CV :: Vec3b>(J、I)[0] = 255。
			image.at <CV :: Vec3b>(J、I)[1] = 255。
			image.at <CV :: Vec3b>(j、i)に対して[2] = 255。
 
		} 
 
	} 
 
}

 

//调用
INTメイン()
{ 
	
	CV ::マットimag1 = CV ::関数imread( "a.jpg")。
	
	塩(imag1,3000)。
 
	CV :: namedWindow( "イメージ")。
	CV ::関数imshow( "イメージ"、imag1)。
 
 
	CV :: waitKey(0); 
 
	システム(「一時停止」)。
	0を返します。
}

 

おすすめ

転載: www.cnblogs.com/k5bg/p/11078142.html