當前位置:首頁 > 公眾號精選 > AI科技大本營
[導讀]作者|小白來源|?小白學視覺了解圖像分割當我們在做一個圖像分類任務時,首先我們會想從圖像中捕獲感興趣的區(qū)域,然后再將其輸入到模型中。讓我們嘗試一種稱為基于聚類的圖像分割技術,它會幫助我們在一定程度上提高模型性能,讓我們看看它是什么以及一些進行聚類分割的示例代碼。什么是圖像分割?想...

作者 | 小白
來源 | 小白學視覺


了解圖像分割
當我們在做一個圖像分類任務時,首先我們會想從圖像中捕獲感興趣的區(qū)域,然后再將其輸入到模型中。讓我們嘗試一種稱為基于聚類的圖像分割技術,它會幫助我們在一定程度上提高模型性能,讓我們看看它是什么以及一些進行聚類分割的示例代碼。



什么是圖像分割?
想象一下我們要過馬路,過馬路之前我們會做什么?



首先,我們會看道路兩旁,以確定接近的車輛等環(huán)境對象,然后我們會對接近的車輛的速度做出一些快速的估計,并決定何時以及如何過馬路。所有這些都發(fā)生在很短的時間內,非常很的神奇。



  1. 我們的大腦捕捉道路兩側的圖像


  2. 它檢測道路上的車輛和其他物體==物體檢測


  3. 它還確定了它檢測到的每個對象的形狀 == 圖像分割



通過確定不同物體的形狀,我們的大腦能夠在同一張快照中檢測到多個物體,這是多么神奇啊。



讓我們進一步了解,假設我們有我們的圖像分類模型,它能夠以 95% 上的準確率對蘋果和橙子進行分類。當我們輸入一幅同時包含蘋果和橙子的圖像時,預測精度會下降。隨著圖像中對象數量的增加,分類模型的性能會下降,這就是目標定位發(fā)揮作用的地方。



在我們檢測圖像中的對象并對其進行分類之前,模型需要了解圖像中的內容,這就是圖像分割的幫助所在。它為圖像中的對象創(chuàng)建一個像素級的蒙版,這有助于模型更精細地理解對象的形狀及其在圖像中的位置。



目標檢測 VS 圖像分割



分割的類型有哪些?
圖像分割大致分為兩大類。


  1. 語義分割


  2. 實例分割


檢測到的對象 — 語義段 — 實例段



在第一張圖片中,我們可以看到檢測到的對象都是男性。在語義分割中,我們認為所有這些像素都屬于一類,因此我們用一種顏色表示它們。另一方面,在實例分割中,這些像素屬于同一類,但我們用不同的顏色表示同一類的不同實例。



根據我們使用的分割方法,分割可以分為許多類別。


  • 基于區(qū)域的分割


  • 基于邊緣檢測的分割


  • 基于聚類的分割


  • 基于CNN的分割等。



接下來讓我們看一個基于聚類的分割示例。



什么是基聚類的分割?
聚類算法用于將彼此更相似的數據點從其他組數據點更緊密地分組。



現在我們想象一幅包含蘋果和橙子的圖像。蘋果中的大部分像素點應該是紅色/綠色,這與橙色的像素值不同。如果我們能把這些點聚在一起,我們就能正確地區(qū)分每個物體,這就是基于聚類的分割的工作原理?,F在讓我們看一些代碼示例。


from skimage.io import imreadfrom skimage.color import rgb2grayimport numpy as npimport matplotlib.pyplot as plt%matplotlib inlinefrom scipy import ndimage# Scaling the image pixels values within 0-1img = imread('./apple-orange.jpg') / 255plt.imshow(img)plt.title('Original')plt.show()


由于肉眼可見,圖像中有五個色段



  1. 蘋果的綠色部分


  2. 橙子的橙色部分


  3. 蘋果和橙子底部的灰色陰影


  4. 蘋果頂部和右側部分的亮黃色部分


  5. 白色背景



讓我們看看我們是否可以使用來自 scikit-learn 的 K 均值算法對它們進行聚類


# For clustering the image using k-means, we first need to convert it into a 2-dimensional arrayimage_2D = img.reshape(img.shape[0]*img.shape[1], img.shape[2])# Use KMeans clustering algorithm from sklearn.cluster to cluster pixels in imagefrom sklearn.cluster import KMeans# tweak the cluster size and see what happens to the Outputkmeans = KMeans(n_clusters=5, random_state=0).fit(image_2D)clustered = kmeans.cluster_centers_[kmeans.labels_]# Reshape back the image from 2D to 3D imageclustered_3D = clustered.reshape(img.shape[0], img.shape[1], img.shape[2])plt.imshow(clustered_3D)plt.title('Clustered Image')plt.show()


效果非常好,我們能夠將五個部分組合在一起,這就是聚類分割的工作原理。目前有許多先進的技術,例如 Mask R-CNN,可以進行更細粒度的分割。




Github代碼連接:


https://github.com/Mathanraj-Sharma/sample-for-medium-article/blob/master/cluster-based-segmentation-skimage/cluster-based-segmentation.ipynb





本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

摘 要 :智能汽車競賽的賽題難度與工程應用性能在不斷提升,賽道元素日益增多且賽道類型逐漸多樣,其識別難度隨之增大,以賽道邊界線斜率、曲率和圖像中黑白跳變等信息為依據的傳統(tǒng)賽道識別方法已無法適用于復雜的賽道情況。因此,通過...

關鍵字: 圖像分割 特征分析 圖像匹配 賽道元素 智能汽車競賽 賽道識別

摘 要 :圖像處理作為計算機視覺技術必不可少的部分,成為眾多學者口中的熱點及難點。圖像分割是把圖像分成若干個特定、具有獨特性質的區(qū)域并提出感興趣目標的技術和過程,目的是實現通過醫(yī)學領域的閾值分割方法以有效分割作物與背景。...

關鍵字: 圖像預處理 圖像增強 邊緣檢測 圖像分割 識別 閾值分割

  邊緣檢測和圖像分割的聯系:   邊緣檢測是通過圖像的梯度變化將圖像中梯度變化明顯的地方檢測出來,針對的是邊緣信息。圖像分割是將目標分割出來,針對的是目標對象,邊緣檢測是空間域圖像分割

關鍵字: 圖像分割 邊緣檢測

  數字圖像處理技術是一個跨學科的領域。隨著計算機科學技術的不斷發(fā)展,圖像處理和分析逐漸形成了自己的科學體系,新的處理方法層出不窮,盡管其發(fā)展歷史不長,但卻引起各方面人士的廣泛關注。首先,視覺是

關鍵字: 圖像分割 數字圖像處理

  圖像分割至今尚無通用的自身理論。隨著各學科許多新理論和新方法的提出,出現了許多與一些特定理論、方法相結合的圖像分割方法。   聚類分析   特征空間聚類法進行圖像分割是將圖像

關鍵字: 圖像分割 圖像處理

所謂圖像分割指的是根據灰度、顏色、紋理和形狀等特征把圖像劃分成若干互不交迭的區(qū)域,并使這些特征在同一區(qū)域內呈現出相似性,而在不同區(qū)域間呈現出明顯的差異性。 1、基于邊緣的圖像分割方法

關鍵字: 圖像分割 圖像處理

1引言所謂圖像分割就是根據目標與背景的先驗知識,對圖像中的目標、背景進行標記、定位,然后將要識別的目標從背景或其他偽目標中分離出來。圖像分割是圖像理解的重要組成部分,其目的是將目標和背景分離,為目標識別

關鍵字: 圖像分割 邊緣檢測 CANNY SOBEL

全球領先的醫(yī)療培訓和模擬技術供應商Simbionix USA Corporation 的旗下子公司Simbionix Ltd. 欣然宣布,該公司的 PROcedure Rehearsal Studio(TM) 軟件已獲得...

關鍵字: 圖像分割 模擬技術 FDA SIM

一. 設計概述1. 設計意圖迅速發(fā)展的醫(yī)學影像技術不斷的推動現代醫(yī)學進步,CT、MRI、PET廣泛地應用與臨床診斷分析。其作用已經從人體組織器官解剖結構的非侵入檢查和可視化,發(fā)展成一種用于手術計劃和仿真、手術導航、

關鍵字: 圖像分割 NIOS BSP 指令

AI科技大本營

113 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉