根据皮肤镜图片对皮肤病变种类进行分类是一个常规的研究话题,在深度学习时代,会将标注好的数据进行训练,学习皮肤病变的特征,而图片中经常会有毛发干扰,这是咱们不须要的特征,也不但愿网络学习到这个特征,所以在数据预处理阶段,能够使用一些传统图像处理算法对图像进行处理。算法
import cv2 def DHR(imgpath,outpath): src = cv2.imread(imgpath) grayScale = cv2.cvtColor(src, cv2.COLOR_RGB2GRAY ) cv2.imwrite("grey.jpg",grayScale) kernel = cv2.getStructuringElement(cv2.MORPH_CROSS,(10,10)) blackhat = cv2.morphologyEx(grayScale, cv2.MORPH_BLACKHAT, kernel) cv2.imwrite("blackhat.jpg",blackhat) ret,thresh2 = cv2.threshold(blackhat,10,255,cv2.THRESH_BINARY) cv2.imwrite("threshold.jpg",thresh2) dst = cv2.inpaint(src,thresh2,1,cv2.INPAINT_TELEA) cv2.imwrite(outpath, dst, [int(cv2.IMWRITE_JPEG_QUALITY), 100])
依次是原图、灰度图、黑帽操做、mask、利用mask图像修复网络