MATLAB灰度级数为1,图像处理 – 在matlab中更改灰度图像中的灰度级数
生活随笔
收集整理的這篇文章主要介紹了
MATLAB灰度级数为1,图像处理 – 在matlab中更改灰度图像中的灰度级数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
雖然result =(img / 8)* 8確實將范圍[0,255]中的灰度圖像轉換為該范圍的子集但現在僅使用32個值,但它可能會產生不希望的偽像.可能產生視覺上更好的圖像的方法稱為改進的灰度量化(縮寫為IGS).執行它的偽代碼可以如下:
mult = 256 / (2^bits)
mask = 2^(8 - bits) - 1
prev_sum = 0
for x = 1 to width
for y = 1 to height
value = img[x, y]
if value >> bits != mask:
prev_sum = value + (prev_sum & mask)
else:
prev_sum = value
res[x, y] = (prev_sum >> (8 - bits)) * mult
例如,使用上面的方法考慮下圖和bit = 5,bits = 4和bits = 3的相應量化:
現在相同的圖像,但通過做(IM /(256 /(2 ^位)))*(256 /(2 ^位))量化:
這不是一個病態的例子.
總結
以上是生活随笔為你收集整理的MATLAB灰度级数为1,图像处理 – 在matlab中更改灰度图像中的灰度级数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt场景中图形项的删除
- 下一篇: 深度搜索和广度搜索领接表实现_数据结构与