python OpenCV 實現圖片的醫學處理


機器視覺第八次實驗

一、實驗目的

通過OpenCV第八次進行實驗,對圖片進行醫學處理。

二、實驗內容

對圖片進行醫學處理。

三、實驗過程

我使用的是python語言+openCV對圖片進行醫學處理的功能。實驗過程我們需要導入的庫有import cv2;from skimage import morphology, io;import matplotlib.pyplot as plt

1)讀取圖片

我們采用直接讀取圖片並直接將其灰度化,使用imread()函數讀取圖片,

代碼實例:

img = cv2.imread("vas0.bmp",0)

cv2.imshow("img",img)

cv2.waitKey()

圖片1.png

圖3.1圖片讀取

2)閾值分割

使用adaptiveThreshold()函數進行計算:

實例代碼:

#閾值分割

th=cv2.adaptiveThreshold(img,255,cv2.ADAPTIVE_THRESH_MEAN_C,cv2.THRESH_BINARY,11,2)

cv2.imshow('th', th)

cv2.waitKey(0)

圖片2.png

圖3.2閾值分割后的圖片

3)圖片反色

輸入的代碼:

#圖像反色

img1 = th.copy()

cv2.threshold(th,80,255,0,th)

for i in range(0,th.shape[0]):

    for j in range(0,th.shape[1]):

        img1[i,j] = 255-th[i,j]

# cv2.imshow("img1",img1)

# cv2.waitKey(0)

plt.imshow(img1,cmap=plt.cm.gray)

plt.axis('off')

plt.show()

圖片3.png

圖3.3反色后的圖片

4)圖像擴展

實例代碼:

#圖像擴展

img2 = cv2.copyMakeBorder(img1,1,1,1,1,cv2.BORDER_REFLECT)

plt.imshow(img2,cmap=plt.cm.gray)

plt.axis('off')

plt.show()

圖片4.png

圖3.4擴展后的圖像

5)去除圖片較小面積的區域並保存

實例代碼:

#去除較小面積的區域

img3 = morphology.remove_small_holes(th,200)

plt.imshow(img3,cmap=plt.cm.gray)

plt.axis('off')

plt.show()

圖片5.png

圖3.5.1去除較小面積的區域(1)

img3 = morphology.remove_small_holes(th,1000)

plt.imshow(img3, cmap=plt.cm.gray)

plt.axis('off')

plt.savefig("jpg")

plt.show()

圖片6.png

圖3.5.2去除較小面積的區域(2)

6)細化圖片

實例代碼:

image = cv2.imread("jpg.png")

#實施骨架算法

image1 =morphology.skeletonize(image)

#顯示結果

plt.imshow(image1)

plt.axis('off')

plt.show()

7)邊緣檢測

實例代碼:

#邊緣檢測

image2 = cv2.Canny(image,80,255)

cv2.imshow("image2",image2)

cv2.waitKey(0)

圖片7.png

圖3.7邊緣檢測的圖片

8)圖片反色

實例代碼:

#圖片反色

image3 = image2.copy()

for i in range(0,image2.shape[0]):

    for j in range(0,image2.shape[1]):

        image3[i,j] = 255-image2[i,j]

cv2.imshow("image3",image3)

cv2.waitKey(0)

圖片8.png 

圖3.8圖片反色

四、實驗中的錯誤

1)安裝我們所需要的庫,不然會報錯,我首先使用pip install skimage,這樣安裝出來的會報錯;

圖片9.png 

圖4.1.1安裝scikit-image庫出錯案例

百度了一下以后我發現這個庫的大名是叫scikit-image,我們就使用pip install scikit-image。

圖片10.png

圖4.1.2解決安裝scikit-image庫出錯的問題

五、實驗總結

學習了OpenCV的醫學處理技術,提升了自己的能力。

 

 ​


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM