【论文笔记】色素性皮肤病图像预处理与内容检索研究

识别对象:

常见色素性皮肤病图像(如黑色素瘤、色素痣、脂溢性角化病、基底细胞癌等)

核心算法:

基于深层卷积神经网络的深度语义Hash编码+基于Hash-AP 分层次深度排序算法

算法过程:

预处理

  1. 去噪
    小波阈值去噪:利用图像小波分解后,根据不同子图像不同特性选取不同阈值,从而去除噪声
    在这里插入图片描述
  2. 增强(提高高频信息)
    需要先去噪达到高信噪比
    直方图均衡化:微分,拉普拉斯图像和原图叠加
  3. 毛发消除
    在这里插入图片描述
    Xiaorong Pu 和Xiaojun Wu 等提出了一种针对这种普通相机和手机拍摄的图像进行毛发消除算法
  4. 图像分割
    GrabCut 分割算法:速度快、抗噪性强等优点,缺点是仅适用于灰度图像,对低对比度图像的模糊和边缘部分效果
    在这里插入图片描述

基于图像特征及Hash 编码的图像检索

  1. 底层特征
    颜色:颜色直方图
    纹理:Gabor小波提取特征
  2. Hash编码

基于深层卷积神经网络的深度语义Hash 图像检索

  1. AlexNet
    有最大池化5层卷积层(F1-5),2 个全连接层(F6-7),最后一个输出层。
    在F7 层之后添加了一个有K 个节点的隐含层H, K 在本文中取48,也就是会生成48 位的二进制编码,作为图像的有效映射。H与F7 之间为全连接,使用sigmoid 作为激励函数,把数值控制在0 和1,作为映射后的Hash 编码,在H层之后添加分类层Fc8,用来计算四种皮肤病图像错误分类误差,迭代训练,使哈希编码能够携带高层语义信息。
    通过监督训练深层神经网络可以获得携带皮肤病图像语义的Hash 编码。
    目的:缩小语义鸿沟

基于Hash-AP 分层次深度排序算法

首先根据Hamming 距离,得到候选集,然后把候选集中的高维特征当做是邻传播聚类(Affinity propagation clustering, AP)中的数据点,再进行AP聚类排序取值。

可借鉴思维:

AP聚类

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智能图像处理技术 作者:李弼程 出版社:电子工业出版社 ISBN:712100047 原价: ¥32 图书简介 本书主要论述了智能图像处理技术,系统介绍了智能图像处理技术的有代表性的思想、算法与应用,跟踪了图像处理技术的发展前沿。全书共分为15章,重点讨论了图像边缘检测、图像分割、图像特征分析、图像配准、图像融合、图像分类、图像识别、基于内容图像检索与图像数字水印。此外,为了内容的完整性,本书还介绍了图像预处理技术,如图像采集、图像变换、图像增强、图像恢复、图像编码与压缩。  图书目录 第1章 绪论 1.1 图像与图像处理的概念 1.2 数字图像处理研究内容 1.2.1 传统的图像处理技术 1.2.2 智能图像处理技术 1.3 数字图像处理系统 1.4 数字图像处理的应用 1.5 人的视觉系统与色度学基础 1.5.1 人的视觉系统 1.5.2 色度学基础 1.6 本书的安排 本章参考文献第2章 图像采集 2.1 图像数字化 2.1.1 图像的数学模型 2.1.2 采样与量化 2.2 量化技术 2.2.1 标量量化 2.2.2 矢量量化 2.2.3 LBG算法与初始码书设计 2.3 图像输入 2.3.1 图像采集系统 2.3.2 图像输入设备 2.4 图像文件格式 2.4.1 BMP(位图)文件格式 2.4.2 GIF文件格式 2.4.3 JPEG文件格式 本章参考文献 第3章 图像变换 3.1 傅里叶变换 3.1.1 一维傅里叶变换 3.1.2 二维傅里叶变换 3.1.3 二维离散傅里叶变换的性质 3.1.4 正交变换的基本概念 3.2 离散余弦变换 3.2.1 离散余弦变换的定义 3.2.2 离散余弦变换的快速实现 3.3 K-L变换 3.3.1 K-L变换的定义 3.3.2 K-L变换的性质 3.4 小波变换 3.4.1 连续小波变换 3.4.2 二进小波变换 3.4.3 离散小波变换 3.5 其他可分离变换 3.5.1 沃尔什变换 3.5.2 哈达玛变换 3.5.3 斜变换 本章参考文献 第4章 图像增强 4.1 空间域单点增强 4.1.1 灰度变换 4.1.2 直方图修正 4.2 图像平滑 4.2.1 噪声门限法 4.2.2 邻域平均法 4.2.3 加权平均法 4.2.4 中值滤波 4.2.5 掩膜平滑法 4.2.6 空间低通滤波 4.3 图像锐化 4.3.1 微分算子方法 4.3.2 Sobel算子 4.3.3 拉普拉斯算子 4.3.4 统计差值法 4.3.5 掩膜匹配法 4.3.6 空间高通滤波 4.4 图像滤波 4.4.1 低通滤波 4.4.2 同态滤波 4.4.3 高通滤波 4.5 彩色增强 4.5.1 假彩色处理 4.5.2 伪彩色处理 本章参考文献 第5章 图像恢复 5.1 图像退化的数学模型 5.1.1 图像退化模型 5.1.2 点冲激函数的退化模型 5.1.3 连续图像退化模型 5.1.4 离散图像的退化模型 5.1.5 离散退化模型的求解 5.2 无约束图像恢复 5.2.1 最小二乘估计 5.2.2 运动模糊图像的恢复 5.3 有约束图像恢复 5.3.1 有约束的最小二乘图像恢复 5.3.2 维纳滤波 5.3.3 功率谱均衡恢复 5.3.4 有约束最小平方恢复 5.4 图像几何校正 5.4.1 几何校正方法 5.4.2 空间几何坐标变换 5.4.3 重采样 本章参考文献 第6章 图像编码与压缩 6.1 图像编码基础 6.1.1 数据压缩的概念 6.1.2 图像压缩的性能评价 6.2 统计编码 6.2.1 编码效率与冗余度 6.2.2 霍夫曼编码 6.2.3 香农-费诺编码 6.2.4 算术编码 6.3 预测编码 6.3.1 预测编码的基本原理 6.3.2 差值脉冲编码调制 6.3.3 最优线性预测 6.4 变换编码 6.4.1 变换编码系统结构 6.4.2 正交变换编码 6.4.3 小波变换编码简介 6.5 无失真压缩编码 6.5.1 引言 6.5.2 基于线性预测的无失真压缩 6.5.3 基于S+P变换的无失真压缩 6.5.4 基于第二代小波变换的无失真压缩 6.6 国际标准简介 6.6.1 JPEG 6.6.2 H.261建议 6.6.3 MPEG-1标准 6.6.4 MPEG-2标准 6.6.5 MPEG-4标准 6.6.6 MPEG-7标准 6.6.7 MPEG-21标准 本章参考文献 第7章 图像边缘检测 7.1 边缘检测的基本概念 7.2 微分边缘检测算子 7.2.1 梯度方法 7.2.2 二阶微分算子 7.3 多尺度边缘检测 7.3.1 Marr-Hildretch边缘检测 7.3.2 Witkin尺度滤波理论 7.3.3 小波变换边缘检测 7.4 基于模糊增强的边缘检测 7.4.1 引言 7.4.2 单层次模糊增强简介 7.4.3 多层次模糊增强 7.4.4 基于多层次模糊增强的边缘提取 7.5 基于Snake模型的边缘检测 7.5.1 Snake模型的数学描述 7.5.2 基于Snake模型的边缘检测 7.6 曲面拟合边缘检测 本章参考文献 第8章 图像分割 8.1 图像分割的一般模型 8.2 基于阈值选取的图像分割方法 8.2.1 直方图阈值 8.2.2 最大熵阈值 8.2.3 二维直方图阈值 8.2.4 统计判决确定门限 8.2.5 局部阈值法 8.3 基于区域的图像分割方法 8.3.1 区域生长法 8.3.2 分裂-合并 8.4 基于边缘检测的图像分割 8.4.1 Hough变换原理 8.4.2 Hough变换应用 8.4.3 广义Hough变换 8.5 模糊分割技术 8.5.1 模糊阈值分割方法 8.5.2 基于二维直方图的模糊门限分割方法 本章参考文献 第9章 图像特征分析 9.1 颜色特征分析 9.1.1 颜色的表示 9.1.2 颜色直方图 9.1.3 直方图不变特征量 9.1.4 颜色矩 9.2 纹理特征分析 9.2.1 空间自相关法 9.2.2 傅里叶功率谱法 9.2.3 共生矩阵法 9.2.4 基于邻域特征统计的纹理分析方法 9.2.5 灰度差分统计方法与行程长度统计法 9.2.6 用分数维描述纹理 9.2.7 Tamura纹理特征 9.3 形状特征分析 9.3.1 引言 9.3.2 基于轮廓的全局方法 9.3.3 基于轮廓的结构方法 9.3.4 基于区域的全局方法 9.3.5 基于区域的结构方法 本章参考文献 第10章 图像配准 10.1 图像配准基础 10.1.1 图像配准的概念 10.1.2 图像配准的一般模型 10.1.3 相似性测度 10.2 基于图像灰度的图像配准 10.2.1 互相关匹配方法 10.2.2 投影匹配算法 10.2.3 基于傅里叶变换的相位匹配方法 10.2.4 图像矩匹配方法 10.3 基于图像特征的配准 10.3.1 算法步骤与特点 910.3.2 图像预处理 10.3.3 特征选择 10.3.4 图像匹配 10.4 最小二乘图像匹配方法 10.4.1 基本思想 10.4.2 基本算法 10.5 快速匹配方法 10.5.1 分层搜索算法 10.5.2 基于遗传算法的匹配方法 10.5.3 基于金字塔分级搜索的匹配方法 本章参考文献 第11章 图像融合 11.1 图像融合的基本原理 11.1.1 信息融合的概念 11.1.2 多源遥感图像融合 11.1.3 图像融合的模型框架与算法 11.1.4 遥感图像融合效果的评价 11.2 小波变换融合法 11.2.1 传统的小波变换融合方法 11.2.2 基于特征的小波变换融合方法 11.3 基于PCA变换与小波变换的图像融合 11.3.1 PCA(主分量分析)变换融合法 11.3.2 基于PCA变换与小波变换的融合算法 11.4 基于IHS变换与小波变换的图像融合 11.4.1 IHS变换融合法 11.4.2 基于IHS变换与小波变换的融合算法 本章参考文献 第12章 图像分类 12.1 图像分类的概念与原理 12.1.1 图像分类的概念 12.1.2 图像分类的原理 12.2 统计分类方法 12.2.1 监督分类 12.2.2 非监督分类 12.3 模糊分类方法 12.3.1 模糊集合 12.3.2 模糊关系 12.3.3 模糊分类 12.3.4 基于模糊关系的模式分类 12.3.5 模糊聚类方法 12.3.6 改进的模糊C-均值算法 12.4 神经网络分类方法 12.4.1 人工神经网络基础 12.4.2 神经网络监督分类方法 12.4.3 神经网络非监督分类方法 12.5 基于广义图像的神经网络遥感图像分类方法 12.5.1 广义图像 12.5.2 算法的实现过程 12.5.3 实验结果与性能比较 12.6 基于证据理论与神经网络的遥感图像分类方法 12.6.1 证据理论 12.6.2 算法的实现过程 12.6.3 实验结果与性能比较 本章参考文献 第13章 图像识别 13.1 图像识别的基本原理 13.2 模板匹配识别技术 13.2.1 模板匹配一般模型 13.2.2 序贯相似性检测算法 13.3 神经网络图像识别技术 13.3.1 神经网络识别的一般模型 13.3.2 BP神经网络识别技术 13.3.3 Kohonen神经网络识别技术 13.4 模糊识别技术 13.4.1 隶属原则识别法 13.4.2 择近原则识别法 13.4.3 一种手写文字模糊识别技术 13.5 基于隐马尔可夫模型的识别技术 13.5.1 隐马尔可夫模型基础 13.5.2 基于隐马尔可夫模型的人脸识别 13.6 车牌识别技术 13.6.1 系统简介 13.6.2 车牌图像定位分割算法 13.6.3 车牌字符的识别 本章参考文献 第14章 c基于内容图像检索 14.1 基于内容图像检索概述 14.1.1 基于内容检索 14.1.2 基于内容图像检索 14.1.3 基于内容图像检索相关技术 14.1.4 基于内容图像检索系统 14.2 基于颜色特征的图像检索 14.2.1 直方图方法 14.2.2 中心矩法 14.2.3 参考颜色表法 14.2.4 颜色对方法 14.2.5 基于主色调的检索方法 14.2.6 结合空间信息的图像检索方法 14.3 基于纹理特征的图像检索 14.3.1 基于共生矩阵的纹理匹配 14.3.2 基于小波变换的纹理匹配 14.3.3 基于Gabor变换的纹理匹配 14.4 基于形状特征的图像检索 14.4.1 基于傅里叶描述的形状检索 14.4.2 基于形状矩的形状检索 本章参考文献 第15章 图像数字水印技术 15.1 图像数字水印技术概述 15.1.1 信息隐藏技术 15.1.2 数字水印技术 15.2 空域水印技术 15.3 DCT域图像水印技术 15.3.1 DCT域图像水印研究综述 15.3.2 算法实例 5.3.3 水印的稳健性测试 15.4 小波域图像水印技术 15.4.1 技术流程 15.4.2 基于低频子带方法 15.4.3 细节分量方法 15.4.4 利用图像编码的方法 15.4.5 Inoue算法 15.5 脆弱图像数字水印技术 15.5.1 脆弱图像数字水印的基本特征和研究状况 15.5.2 算法实例 本章参考文献
要去除图片中的皮肤毛发并确定病灶进行分割,可以使用计算机视觉中的图像处理技术来实现。 以下是一些步骤: 1. 读取图片:使用Python的PIL库(Python Imaging Library)或OpenCV库读取图片。 2. 去除毛发:对于去除毛发,可以使用基于图像处理的算法,比如基于颜色的阈值分割,或者使用基于形态学的算法,比如开运算(opening)和闭运算(closing)。 3. 确定病灶:对于确定病灶,可以使用边缘检测算法,比如Canny算法,或者使用基于形态学的算法,比如膨胀(dilation)和腐蚀(erosion)。 4. 分割:对于分割,可以使用基于像素的分类算法,比如K-means聚类算法,或者使用基于区域的算法,比如基于图论的分割算法(Graph-cut)。 5. 显示结果:最后,将结果显示在屏幕上或者保存到文件中。 在PyCharm中,你可以使用OpenCV库来实现上述步骤。下面是一个简单的示例代码: ```python import cv2 # 读取图片 img = cv2.imread('img.jpg') # 去除毛发 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) ret, thresh = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU) kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (3, 3)) opening = cv2.morphologyEx(thresh, cv2.MORPH_OPEN, kernel, iterations=2) sure_bg = cv2.dilate(opening, kernel, iterations=3) dist_transform = cv2.distanceTransform(opening, cv2.DIST_L2, 5) ret, sure_fg = cv2.threshold(dist_transform, 0.7 * dist_transform.max(), 255, 0) sure_fg = np.uint8(sure_fg) unknown = cv2.subtract(sure_bg, sure_fg) # 确定病灶 edges = cv2.Canny(img, 100, 200) kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (3, 3)) dilation = cv2.dilate(edges, kernel, iterations=2) erosion = cv2.erode(dilation, kernel, iterations=1) # 分割 ret, thresh = cv2.threshold(erosion, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU) contours, hierarchy = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) for i in range(len(contours)): cv2.drawContours(img, contours, i, (0, 0, 255), 2) # 显示结果 cv2.imshow('Image', img) cv2.waitKey(0) cv2.destroyAllWindows() ``` 在这个示例中,我们首先读取了一张名为“img.jpg”的图片,然后使用基于形态学的算法去除了毛发。接着,使用边缘检测算法检测出了病灶的边缘。最后,使用基于像素的分类算法分割出了病灶,并将结果显示在屏幕上。 当然,这只是一个简单的示例,实际上,要实现更复杂的图像处理任务,需要根据具体情况选择不同的算法和技术,并进行更详细的参数调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值