快捷搜索:  汽车  科技

python深度学习图像处理(每次只学三分钟)

python深度学习图像处理(每次只学三分钟)分割着色图涉及的函数介绍:

分水岭算法是图像分割比较基础也是比较简单的方法,虽然随着神经网络的盛行,这种方法已经被人淡忘,不过作为图像处理的专业人员还是有必要了解这种方法的,原理可以自行查阅资料,这里仅使用python中封装好的方法验证效果。

import cv2 import numpy as np from scipy import ndimage as ndi from skimage import morphology segmentation filters img_path = "D://001.jpg" img_bgr = cv2.imread(img_path) #根据指定的图片路径读取图像 img_gray = cv2.cvtColor(img_bgr cv2.COLOR_BGR2GRAY) img_gauss = cv2.GaussianBlur(img_gray (3 3) 0) #过滤噪声 #将梯度值低于10的作为开始标记点 markers = filters.rank.gradient(img_gauss morphology.disk(5)) < 10 markers = ndi.label(markers)[0] img_gradient = filters.rank.gradient(img_gauss morphology.disk(2)) #计算梯度 labels = segmentation.watershed(img_gradient markers) #基于梯度的分水岭算法 labels = labels.astype(np.uint8) img_segment = cv2.applyColorMap(labels cv2.COLORMAP_RAINBOW) #给标签着色,伪彩色图 cv2.imwrite("D://001_gradient.jpg" img_gradient) cv2.imwrite("D://001_labels.jpg" img_segment)

先看效果图:

python深度学习图像处理(每次只学三分钟)(1)

原图

python深度学习图像处理(每次只学三分钟)(2)

梯度图

python深度学习图像处理(每次只学三分钟)(3)

分割着色图

涉及的函数介绍:

python深度学习图像处理(每次只学三分钟)(4)

猜您喜欢: