| 
 | 
 
 
• 非監督式閥值是指有七種opencv提供的閥值規則,他會自主學習,自動找出閥值。 
• 透過try_all_threshold( )查看自主學習閥值的成果。 
• 我們可以透過圖表顯示影像灰階化後的色彩分布: 
• 我們須將二維的灰階影像轉換為一維的資料 
• image1.ravel( ) 代表將二維資料轉換為一維 
• plt.hist(image1.ravel( ) )查看轉換為一維後的色彩分布 
• 挑選兩種非監督式閥值的學習查看他的執行成果。  
原圖 
非監督式 閥值 thresh 
 
 
 
 
原始碼 
- from  skimage.io import  imshow,imread,imsave
 
 - import  matplotlib.pyplot as plt
 
 - import  skimage.color as colors
 
 - import  skimage.filters as filters
 
 - def image_show(image,nrows=1,ncols=1,cmap='gray'):
 
 -     fig,ax=plt.subplots(nrows=nrows,ncols=ncols,figsize=(6,6))
 
 -     ax.imshow(image,cmap='gray')
 
 -     print(image)
 
 -     ax.axis('off')
 
 -     plt.show()
 
 -     return  fig,ax
 
 - #image1=imread('cat.jpg',as_gray=True)
 
 - image1=imread('threshold.png',as_gray=True)
 
 - thresh1=filters.threshold_otsu(image1) #方法一
 
 - #print(thresh1)
 
 - data2=(image1>thresh1)
 
 - #print(data2)
 
 - image_show(data2)
 
 - thresh1=filters.threshold_yen(image1) #方法二
 
 - print(thresh1)
 
 - data2=(image1>thresh1)
 
 - image_show(data2)
 
  複製代碼 
 
thresh1代表閥值設定的比率。 
 
 
當imge1>thresh1,也就是通過閥值的灰階色彩,就成為True,否則就是False 
透過image_show( )呈現圖像 
 
 
結果圖 
非監督式 閥值 thresh 
 
非監督式 閥值 thresh 
 
 
 |   
 
 
 
 |