<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          基于OpenCV實(shí)戰(zhàn)的圖像處理:色度分割

          共 3057字,需瀏覽 7分鐘

           ·

          2021-05-05 10:22

          點(diǎn)擊上方小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂

          重磅干貨,第一時(shí)間送達(dá)


          通過HSV色階使用彩色圖像可以分割來分割圖像中的對象,但這并不是分割圖像的唯一方法。為什么大多數(shù)人偏愛色度而不是RGB / HSV分割?

          • 可以獲得RGB / HSV通道之間的比率。

          • 可以使用由輔助顏色和其他顏色的混合物組成的目標(biāo)色塊。


          我們將色度分割定義為利用RG通道的色度空間從圖像中提取目標(biāo)的過程。后者構(gòu)成了一個(gè)二維顏色表示,它忽略了與強(qiáng)度值相關(guān)的圖像信息。我們通過觀察不同顏色通道的比例來實(shí)現(xiàn)這一點(diǎn),并使用標(biāo)準(zhǔn)化的RGB空間來映射它。因此,為了計(jì)算圖像的RG色度,我們使用以下方程式:


          我們主要只看r和g方程,因?yàn)閺哪抢镂覀兛梢灾庇^地計(jì)算b通道,讓我們使用我們的老朋友Python將色度分割付諸實(shí)踐。在繼續(xù)執(zhí)行之前,請安裝以下庫:

          from skimage.io import imread, imshowimport matplotlib.pyplot as pltimport numpy as np


          本文實(shí)踐操作將使用此圖像:


          圖像處理步驟:

          步驟1:計(jì)算圖像的RG色度

          • 這是通過使用引言中定義的方程式完成的。

          步驟2:計(jì)算顏色值的2D直方圖(原始圖像)

          • 這是通過使R和色度值均變平并將其輸入hist2d函數(shù)中來實(shí)現(xiàn)的。

          • 通過這一點(diǎn),可以注意到什么顏色或一組顏色構(gòu)成了我們的圖像。

          步驟3:選擇參考圖片補(bǔ)丁

          • 從感興趣的對象生成補(bǔ)丁。在這種情況下,我們將草莓細(xì)分。因此,將要選擇的補(bǔ)丁將是草莓的補(bǔ)丁。

          步驟4:計(jì)算補(bǔ)丁的RG色度

          • 重復(fù)步驟1,但在步驟3中使用圖像補(bǔ)丁

          步驟5:計(jì)算顏色值的2D直方圖(色標(biāo))

          • 重復(fù)步驟2,但在步驟3中使用圖像

          到目前為止,我們已經(jīng)獲得了相關(guān)圖像的RG色度值?,F(xiàn)在,我們進(jìn)行下一步-參數(shù)分割。

          第6步:參數(shù)細(xì)分

          • 此步驟要求我們擬合高斯分布,該分布將確定屬于感興趣顏色的像素。在執(zhí)行此操作之前,應(yīng)從感興趣的對象(參考補(bǔ)?。┯?jì)算平均值和標(biāo)準(zhǔn)偏差。然后將這些反饋給高斯分布函數(shù)。


          步驟1-6的代碼實(shí)現(xiàn)如下實(shí)現(xiàn):

          #image chromaticity values fruits_R = fruits[:,:,0]*1.0/fruits.sum(axis=2) fruits_G = fruits[:,:,1]*1.0/fruits.sum(axis=2) #patch patch_strw = fruits[60:90,50:90,:]  #patch chromaticity values patch_R = patch_strw[:,:,0]*1.0/patch_strw.sum(axis=2) patch_G = patch_strw[:,:,1]*1.0/patch_strw.sum(axis=2) #mean and stdev calculation of patch  std_patch_R = np.std(patch_R.flatten()) mean_patch_R = np.mean(patch_R.flatten()) std_patch_G = np.std(patch_G.flatten()) mean_patch_G = np.mean(patch_G.flatten()) #gaussian function def gaussian(p,mean,std):     return np.exp(-(p-mean)**2/(2*std**2))*(1/(std*((2*np.pi)**0.5))) x = np.linspace(0,1) y = gaussian(x,mean_patch_R,std_patch_R) #plotting fig, ax = plt.subplots(2, 3, figsize=(20, 7)) ax[0,0].scatter(fruits_R.flatten(),fruits_G.flatten()) ax[0,0].set_title('RG Chromaticity', size=14)  ax[0,1].hist2d(fruits_R.flatten(), fruits_G.flatten(),            bins=100,cmap='binary'); ax[0,1].set_title('Color Values 2D Histogram', size=14) ax[0,2].imshow(patch_strw) ax[0,2].set_title('Strawberry Patch', size=14) ax[1,0].scatter(patch_R.flatten(),patch_G.flatten()) ax[1,0].set_title('Patch RG Chromaticity', size=14) ax[1,1].hist2d(patch_R.flatten(), patch_G.flatten(),          bins=100,cmap='binary') ax[1,1].set_title('Patch Color Values 2D Histogram', size=14) ax[1,2].plot(x,y) ax[1,2].set_title('Gaussian Plot', size=14) fig.suptitle('Strawberry', size = 30)

          綜上所述,類似于彩色圖像分割方法,存在一個(gè)任意確定的閾值。嘗試并嘗試使用這些值,然后選擇將返回最理想輸出的值。同樣,在最終圖中,盡管草莓被清楚地分割了,但仍然捕獲了無關(guān)的信息。這是進(jìn)行形態(tài)學(xué)操作以方便進(jìn)一步清潔圖像的地方,因此分割與以往一樣準(zhǔn)確。

          — — 完 — —



          下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
          在「小白學(xué)視覺」公眾號后臺回復(fù):擴(kuò)展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺實(shí)戰(zhàn)項(xiàng)目52講
          小白學(xué)視覺公眾號后臺回復(fù):Python視覺實(shí)戰(zhàn)項(xiàng)目,即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計(jì)數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內(nèi)容提取、面部識別等31個(gè)視覺實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺。

          下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講
          小白學(xué)視覺公眾號后臺回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講,即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。

          交流群


          歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計(jì)算攝影、檢測、分割、識別、醫(yī)學(xué)影像、GAN算法競賽等微信群(以后會逐漸細(xì)分),請掃描下面微信號加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進(jìn)入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~


          瀏覽 28
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  婷婷俺来也 | 久久婷婷夜色精品国产冻传媒 | 黄色网页在线视频 | 欧美伊人大香蕉 | 日本不卡高清视频 |