关键词:消除不同图像数据色调差异/消除颜色深浅差异/病理/机器学习/深度学习/人工智能
机器学习训练图像数据时可能会因为图像数据之间的颜色深浅,色调等影响训练和预测结果,本方法可以减弱颜色深浅/色调不同对训练造成的影响
本栗子用到的是彩色图片
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
其中 histomicstk为某个库,可使用pip install histomicstk安装,root为目标文件遍历的列表(可参考我写的上一篇笔记),infer_path为标准化图像(用人眼观察主观得到的感觉颜色/色调等都不错的图片)
我正在拼接多张图像,但我想改善它们之间的色彩过渡。这是两个图像:
- http://imgur.com/nG5I0nr
- http://imgur.com/EZFzNeL
- 这是缝合的图像:
- http://imgur.com/C23iOqJ
- 您可能会看到,颜色过渡非常差。我想让它们看起来像是相同的图像(或至少接近它)
我目前的操作方式:
我首先使用filter2D
删除接缝,然后使用Laplacian变换获取图像连接点的遮罩,然后使用此遮罩进行修复:
接缝去除:kernel = np.ones((5,5),np.float32)/25 seam_removal = cv2.filter2D(data_map,-1,kernel)
这是我获得的图像连接点的蒙版,并使用此蒙版在一些膨胀后进行修补: - http://imgur.com/L3tmlGy
- 但是,正如您在最终图像中看到的那样,这根本无法改善混合效果。
最佳答案
我不知道这是一个好主意,但我认为您可以使用Kmeans来“调整”图像的颜色。
首先,您将图像转换为 RGBimage= cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
第二,使用 Kmeans 算法训练第一张图像并找出“簇颜色”clt = KMeans(n_clusters = 20) clt.fit(img1) colors = clt.cluster_centers_
通过使用在步骤2中找到的群集颜色来转换图像2中的颜色,来生成第三个。您可以参考此tutorial。
最后,只需将两个图像合并为一个即可。
我有第二种方法,那就是您可以将两个图像的色调更改为相同的色调。您可以看看