【发布时间】:2015-06-11 09:27:59
【问题描述】:
我正在尝试拟合两个数据集。其中包含使用两种不同测量设备(X 射线与 µct)测量同一物体的结果。
我确实设法重建了图像数据并适应了堆栈的方向和偏移量。它看起来像这样(大约 500 张图片中的一张):
这里的重点是在 X 射线数据上比较几种去噪算法(左)。假设来自 µCT(右)的数据接近真实信号,没有任何噪声。因此,我想将来自每个算法的去噪 X 射线数据与来自 µCT 的“纯”信号进行比较,以查看哪种算法产生最低的 RMS 误差。因此,我需要以某种方式将左侧部分的灰度值拟合到右侧部分的灰度值,而不需要过多地处理噪声。
右侧的灰度值在 0 到 100 的范围内,而 X 射线数据的范围从大约 4000 到 30000。“气泡”在大约 8000 到 11000 的范围内。(那些不是真正的气泡而是一个从 3D 打印机出来的带有孔的人造模型)
我尝试做的是(某种)带状传递这些气泡并将它们映射到 ~100,同时将其他所有值移向 4(这是 µCT 数据背景的值)。
代码如下:
zwst = zwsr;
zwsr(zwst<=8000)=round(zwst(zwst<=6500)*4/8000);
zwsr(zwst<=11000 & zwst>8000)= round(zwst(zwst<=11000 & zwst>8000)/9500*100);
zwsr(zwst>11000)=round(zwst(zwst>11000)*4/30000);
结果如下所示:
其中一些气泡看起来变形了,背景中的噪音部分完全消失了。在保持噪声部分的同时,有没有更好的方法来拟合这些灰度值?
编辑:澄清一下:µCT 数据被假定为无噪声,而 X 射线数据被假定为有噪声。换句话说,µCT = signal 而x-ray = signal + noise。为了量化我的去噪方法的质量,我想计算x-ray - µCT = noise。
【问题讨论】:
标签: matlab image-processing histogram grayscale data-fitting