利用直方图均衡化调整胸片对比度


拍摄出来的胸片用microDicom读取后有的会不大清楚,microDicom本身并没有调整对比度的功能,我也不大清楚有没有其它读胸片的软件可以调整对比度,于是查阅不少博客,看到有用直方图均衡化来做的,自己试了下效果还不错。

导入相关包

import pydicom
import cv2
import matplotlib.pyplot as plt

定义调整对比度的函数,调用了opencv中CLAHE(contrast limited adaptive histogram equalization对比度受限直方图均衡化)的库函数

def limitedEqualize(img_array, limit = 20.0):
    clahe = cv2.createCLAHE(clipLimit = limit, tileGridSize = (8,8))
    return clahe.apply(img_array)

读取胸片和像素矩阵

ds = pydicom.read_file(filename)
data = ds.pixel_array

利用matplotlib分别显示原始数据和经过直方图均衡化的数据

plt.subplot(121)
plt.imshow(data, cmap='gray')

plt.subplot(122)
plt.imshow(limitedEqualize(data),cmap='gray')

效果图,左边是原图,右边是处理过的


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM