学習のOpenCVの記録を閾値

手段を閾値ピクセルは、画像処理内の特定の値または所定の値よりも低い以上であります

フォームの機能:

RETVAL、DST = cv2.thresshold(SRC、THRESH、MAXVAL、タイプ)

代表的しきい値戻りRETVAL

原画像として画像を閾値、同じサイズおよびタイプDST代表的な結果

分割する画像のSRC代表的には、マルチチャネルであってもよいです

脱穀を設定するしきい値を表し、

最大値の代表的なタイプは、設定する必要がMAXVAL THRESH_BINARY又はTHRESH_BINARY_INV型であります

閾値化タイプはのタイプを示します

次のように具体的な種類があります

 

 

2値化閾値処理(cv2.THRESH_BINARY)

2つだけの値に画像処理後の二値画像

8ビットグレースケールイメージの場合、値は処理がしきい値がビット0未満であり、閾値は255 THRESH処理である超え

1つの インポートCV2
 2  インポートNPとしてnumpyの 
 3 IMG = np.random.randint(0256、サイズ= [4,5]、DTYPE = np.uint8)
 4 T、RST = cv2.threshold(IMG、127255 、cv2.THRESH_BINARY)
 5  プリント" IMG = \ n " 、IMG)
 6  プリント" T = " 、T)
 7  プリント" RST = \ n "、RST)
IMG = 
 [ 98 151 50 196 238 ]
 [ 45 64 225 227 204 ]
 [ 45 19 46 233 82 ]
 [ 122 103 64 182 218 ]
T = 127.0 
RST = 
 [0 255 0 255 255 ]
 [0 0 255 255 255 ]
 [0 0 255    0]
 [0 0 0 255 255]

 

 

逆2値化閾値処理(cv2.THRESH_BINARY_INV)

処理された画像は、二値画像の2つだけの値であります

階調処理画素値がしきい値THRESHよりも大きい場合、その値は0として扱われ、255未満であります

1つの インポートCV2
 2  インポートNPとしてnumpyの 
 3 IMG = np.random.randint(0256、サイズ= [4,5]、DTYPE = np.uint8)
 4 T、RST = cv2.threshold(IMG、127255 、cv2.THRESH_BINARY_INV)
 5  プリント" IMG = \ n " 、IMG)
 6  プリント" T = " 、T)
 7  プリント" RST = \ n "、RST)
IMG = 
 [ 161 182 120 192 159 ]
 [ 64 197 108 242 182 ]
 [ 237 203 8 206 67 ]
 [ 31 7 190 226 22 ]
T = 127.0 
RST = 
 [0 0 255    0 0]
 [ 255 0 255    0 0]
 [0 0 255 0 255 ]
 [ 255 255 0 0 255]

 

カットオフ閾値処理(cv2.THRESH_TRUNC)

画素値の閾値は変わらない未満、閾値として処理THRESH閾値よりも大きいです

輸入CV2の
 輸入NPとしてnumpyの
IMG = np.random.randint(0256、サイズ= [4,5]、DTYPE = np.uint8)
T、RST = cv2.threshold(IMG、127255 、cv2.THRESH_TRUNC)
 プリント" IMG = \ n " 、IMG)
 プリント" T = " 、T)
 の印刷" RST = \ n "、RST)
IMG = 
 [ 31 121 210 126 117 ]
 [ 17 144 78 31 193 ]
 [ 91 143 27 58 103 ]
 [ 203 216 151 176 30 ]
T = 127.0 
RST = 
 [ 31 121 127 126 117 ]
 [ 17 127 78 31 127 ]
 [ 91 127 27 58 103 ]
 [ 127 127 127 127 30]

 

閾値上ゼロ(cv2.THRESH_TOZERO_INV)

ゼロの閾値上の画像画素値が閾値処理がより小さいまたは閾値に等しい画素値は変化しないままで、0よりも大きく、処理します

1つの インポートCV2
 2  インポートNPとしてnumpyの 
 3 IMG = np.random.randint(0256、サイズ= [4,5]、DTYPE = np.uint8)
 4 T、RST = cv2.threshold(IMG、127255 、cv2.THRESH_TOZERO_INV)
 5  プリント" IMG = \ n " 、IMG)
 6  プリント" T = " 、T)
 7  プリント" RST = \ n "、RST)
IMG = 
 [ 209 180 150 127 21 ]
 [ 11 227 7 223 211 ]
 [ 218 84 90 32 61 ]
 [ 101 129 240 36 176 ]
T = 127.0 
RST = 
 [0 0 127 21 ]
 [ 11 0 7    0 0]
 [0   84 90 32 61 ]
 [ 101 0 0 36 0]

 

ゼロの低い閾値(cv2.THRESH_TOZERO)

未満又は処理画素しきい値低い閾値画像の値に等しいが処理されるピクセル値がしきい値が変更されないままより大きい、0であります

1つの インポートCV2
 2  インポートNPとしてnumpyの 
 3 IMG = np.random.randint(0256、サイズ= [4,5]、DTYPE = np.uint8)
 4 T、RST = cv2.threshold(IMG、127255 、cv2.THRESH_TOZERO)
 5  プリント" IMG = \ n " 、IMG)
 6  プリント" T = " 、T)
 7  プリント" RST = \ n "、RST)
IMG = 
 [ 249 40 83 55 210 ]
 [ 195 144 246 163 230 ]
 [ 41 124 16 209 5 ]
 [ 48 177 190 118 75 ]
T = 127.0 
RST = 
 [ 249 0 0 210 ]
 [ 195 144 246 163 230 ]
 [0 0 209    0]
 【0 177 190 0 0]

おすすめ

転載: www.cnblogs.com/miaorn/p/12207214.html