医学图像的窗宽窗位

本文介绍了一种基于直方图分析的医学图像窗宽和窗位自动调整算法,通过计算图像直方图的峰值和分布,确定窗宽和窗位,以优化图像显示效果。

医学图像是16位灰度图,窗宽窗位一般是活动的,处理完图像后,返回一个合适的窗宽窗位是非常有必要的,阅览了知网的几篇论文,写了如下函数,很简单,原理是根据图像的直方图来调节的方法。

定义一个函数:

void Wadjust(Mat &src, ushort &WW, ushort &WL, double th)

src为输入图,WW,WL为窗宽和窗位输出,th为微调的参数,测试0.08-0.12都是比较好的。quality为粗定义图像的质量分数,项目需要,代码用下面方法二就可以了。上代码:

void Wadjust(Mat &src, ushort &WW, ushort &WL,int &quality, double th)
{
	double sum = 0;

	double num[MAXPIXEL+1] = { 0 };//MAXPIXEL =16384,255,65536看图像的位数去

	double maxVal = 0;

	double minVal = MAXPIXEL;

	int left = 0; int right = 0;  //窗宽的左边界和右边界

	int pick = 0,pick_pos = 0; //存储直方图的峰值以及该峰值对应的直方图像素横坐标
	//minMaxIdx(src, &minVal, &maxVal);  
	//计算直方图
	for (auto i = 0; i < src.rows; i++)

		for (auto j = 0; j < src.cols; j++)
		{
			ushort val = src.at<ushort>(i, j);

			if (val > MAXPIXEL)
				val = MAXPIXEL;

			num[val] ++;

			sum += val;
			// 寻找图像像素的最大最小值,作为窗宽的粗范围
			if (val >= maxVal)
			{
				maxVal = val;
			}
			if ((va
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值