此小文主要介绍颜色空间的转换,将深度图转为彩色,借以说明颜色转换与图像通道,下面是效果:
深度图的生成
深度图的生成有便捷的算子可用,主要使用了binocular_disparity算子,输入左右两幅图像,输出得到视差图,下图是一个例子:
代码:
binocular_disparity (ImageRectifiedL, ImageRectifiedR, Disparity, Score, 'ncc', 9, 9, 100, -500, -100, 2, 0.80, 'none', 'none')
颜色转换
步骤如下:
1.首先读取视差图像,这里的图像是单通道的,Byte类型。
2.将灰度范围扩展到0~255以内。
3.创建一张空图像,这个用于合成一张新图的时候填补通道用。
4.颜色空间转换,创建一张HSV空间的图,灰度图放在H通道中,用于显示各种何样的色调。同时生成R\G\B通道图像。
5.在将RGB通道合并,即可得到彩色深度图。
代码如下:
read_image (Image, 'disparity.jpg')
min_max_gray (Image, Image, 0, Min, Max, Range)
scale_image (Image, scaledImage, 255/(Max - Min), (-Min)* 255/(Max - Min))
gen_image_proto (Image, ImageClear, 255)
trans_to_rgb (scaledImage,ImageClear, ImageClear, ImageRed, ImageGreen, ImageBlue, 'hsv')
compose3 (ImageRed, ImageGreen, ImageBlue, MultiChannelImage)
dev_display(MultiChannelImage)
这个例子主要是用于说明颜色空间的转换,使用了从HSV空间到RGB空间。彩色深度图本身并无多大意义,纯粹是好看(啊哈哈哈)
(作者:晚晴风 ,转载需经本人同意)