IDL实现同时对比度

什么是同时对比度

人眼对某个区域感觉到的亮度不仅仅依赖其本身的强度。

效果图

这里第一眼看上去,中间的颜色是一致的么?其实是一致的,这是人眼的一种效应。

代码实现

;Name: 同时对比度
;Time: 2013-12-16
;Author: 尹全超

PRO item_a_1

;创建4个图像数组
box1 = bytarr(150,150)
box2 = bytarr(150,150)
box3 = bytarr(150,150)
box4 = bytarr(150,150)

;外层灰度赋值(从屏幕拾取RGB颜色转换灰度颜色)
box1[] = 0.29949 + 0.587 * 49 + 0.11449
box2[
] = 0.299149 + 0.587 * 149 + 0.114149
box3[] = 0.299199 + 0.587 * 199 + 0.114199
box4[
] = 0.299230 + 0.587 * 230 + 0.114230

;内层灰度赋值
box1[40:110,40:110]=0.29999 + 0.587 * 99 + 0.11499
box2[40:110,40:110]=0.29999 + 0.587 * 99 + 0.11499
box3[40:110,40:110]=0.29999 + 0.587 * 99 + 0.11499
box4[40:110,40:110]=0.29999 + 0.587 * 99 + 0.11499

;出图
Img=image(box1,LAYOUT=[4,1,1])
Img=image(box2,/CURRENT,LAYOUT=[4,1,2])
Img=image(box3,/CURRENT,LAYOUT=[4,1,3])
Img=image(box4,/CURRENT,LAYOUT=[4,1,4])

END

这里用到一个rgb转换灰度的过程,具体的转换的过程你可以看这篇文章:拾取屏幕RGB颜色转换灰度

海面风场的数据下载 IDL实现马赫带效应

作者:,GIS爱好者。
分享本文,请您带上本文链接
分享到:

发表评论