【问题标题】:How to get any two minima of histogram values?如何获得直方图值的任意两个最小值?
【发布时间】:2015-06-25 15:22:43
【问题描述】:

我正在尝试使用灰度映射函数将原始灰度图像转换为映射灰度图像。我不知道如何让任何两个最小值对应于原始直方图的灰度范围 [a,b],以便我可以将这些值用于下面的等式以获得映射的灰度图像。

f(x,y)=0 if [0,a),
f(x,y)=(255/(a-b))-a for [a,b],
f(x,y)=255 if (b,255]

谢谢!

【问题讨论】:

  • 我假设您要的是两个 extrema a 和 b。在这种情况下,MATLAB 具有查找最大值和最小值的函数。此外,您的“代码”本质上是一个问题的伪代码。这是作业吗?如果是这样,它应该被标记为这样。
  • @Dan 对不起我的错。变老了!

标签: matlab histogram


【解决方案1】:

因此,基本上您希望将图像的直方图缩放到 0 到 255 的范围内。您需要的只是最大值和最小值。找到它们的最简单方法是

a = min(I(:));
b = max(I(:));

另外我怀疑你的中间方程实际上应该是

f(x,y)=(255/(a-b))*(f(x,y)-a) 对于 [a,b]

但是,这将消除对前两个方程的需要。因此,ab 可能不是您的情况的极值,而是您实际上是在试图强调位于图像直方图中间的某些强度范围(并基本上丢弃该范围之外的所有信息) .在这种情况下,您没有向我们提供足够的信息来建议 ab 的值。

【讨论】:

    猜你喜欢
    • 2019-07-20
    • 1970-01-01
    • 2018-04-25
    • 2020-01-27
    • 2015-06-20
    • 2019-09-20
    • 1970-01-01
    • 1970-01-01
    • 2018-02-15
    相关资源
    最近更新 更多