最近在一个项目中有需要用到将图片从GrayScale转为FalseColor,然而百度了一下Halcon 伪彩色等关键字均找不到相关答案,倒是有很多OpenCV和Matlab的...后来在搜索中看到了一个lut字眼,恍然记起Halcon中有 set_lut 的这条Operator。试了一下果然是这条算子,在这里记录下来,方便其他人搜索。

Halcon中的实现

read_image (Img1, 'img1')
access_channel (Img1, Image, 1)
get_image_size (Image, Width, Height)
dev_close_window ()
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
query_lut(WindowHandle,LUTs)
for i := 0 to |LUTs|-1 by 1
dev_set_lut(LUTs[i])
dev_display (Image)
disp_message (WindowHandle, LUTs[i], 'window', 12, 12, 'black', 'true')
wait_seconds(1)
endfor

各个参数效果如下:

伪彩色处理的原理和方法

当然,很多时候Halcon等视觉函数库在给我们提供便利的同时,也会给我们带来桎梏。我们只能使用它们给定的参数,而失去自定义的自由。所以理解原理,在必要的时候可以帮助我们做出自己的函数。

伪彩处理是指将黑白图像转化为彩色图像的一种图像处理技术。主要作用的提高人眼对图像细节的辨识度,主流的伪彩色处理有密度分层法灰度级-彩色变换法

1. 密度分层法

密度分层法:把灰度图像的灰度级分成N个区间,并为每个区间指定一种彩色,如此将一幅灰度图像转变成一幅伪彩图像。

2. 灰度级-彩色变换法

灰度级-彩色变换法:灰度图像的灰度级分别在红、绿、蓝三个通道上有对应的预设函数,三个函数的输出即可组成伪彩色。

3. 总结

伪彩色处理,将灰度空间映射在彩色空间。

Image Processing - Pseudo(False) Color Processing的更多相关文章

  1. Color Processing 色彩处理

    How to read and write pixel data Bitmap processing Image Stride Bayer Color Filter Pattern High-Qual ...

  2. Method of offloading iSCSI TCP/IP processing from a host processing unit, and related iSCSI TCP/IP offload engine

    A method of offloading, from a host data processing unit (205), iSCSI TCP/IP processing of data stre ...

  3. Video processing systems and methods

    BACKGROUND The present invention relates to video processing systems. Advances in imaging technology ...

  4. Architectures for concurrent graphics processing operations

    BACKGROUND 1. Field The present invention generally relates to rendering two-dimension representatio ...

  5. 插件化注解处理API(Pluggable Annotation Processing API)

    Java奇技淫巧-插件化注解处理API(Pluggable Annotation Processing API) 参考资料 JDK6的新特性之六:插入式注解处理API(Pluggable Annota ...

  6. Intel graphics processing units

    http://en.wikipedia.org/wiki/Comparison_of_Intel_graphics_processing_units Comparison of Intel graph ...

  7. 【转】Java奇技淫巧-插件化注解处理API(Pluggable Annotation Processing API)

    参考资料 JDK6的新特性之六:插入式注解处理API(Pluggable Annotation Processing API) Java Annotation Processing and Creat ...

  8. Libraries&Workflow for a modern geospatial processing(现代地理空间处理的库与工作流)

    Libraries for a modern geospatial workflow现代地理空间工作的类库 Distribution Writing, Running, and Distributin ...

  9. Processing简明教程与Java平台移植方法

    1 Processing    1.1 Processing简介          Processing是一种具有革命前瞻性的新兴计算机语言,它的概念是在电子艺术的环境下介绍程序语言,并将电子艺术的概 ...

随机推荐

  1. 九度OJ 1159:坠落的蚂蚁 (模拟、排序)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:1098 解决:277 题目描述: 一根长度为1米的木棒上有若干只蚂蚁在爬动.它们的速度为每秒一厘米或静止不动,方向只有两种,向左或者向右.如 ...

  2. Dijkstra的堆优化

    先附上一个例题:P3371 [模板]单源最短路径 一眼扫去,最短路... spfa可行,但是今天的主题是Dijkstra: #include<iostream> #include<a ...

  3. 关于JavaScript中prototype机制的理解

    最近几天一直在研究JavaScript中原型的机制,从开始的似懂非懂,到今天终于有所领悟.不敢说彻底理解,但是起码算知道怎么回事了. 为什么一开始似懂非懂 开始了解一遍原型机制后,感觉知其然但不知其所 ...

  4. map select reduce

    map: 针对每个element进行变换并返回整个修改后的map a.map do |item| a.upcase end a.map(&:upcase) 一样的效果, &:代表了it ...

  5. Android 进程增加存活率

    引用 : http://geek.csdn.net/news/detail/68515

  6. bind(),live(),delegate(),on()绑定事件方式

    1.bind():向匹配元素添加一个或多个事件处理器. 适用所有版本,但是自从jquery1.7版本以后bind()函数推荐用on()来代替. $(selector).bind(event,data, ...

  7. BZOJ 1529 [POI2005]ska Piggy banks:并查集

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1529 题意: Byteazar有N个小猪存钱罐. 每个存钱罐只能用钥匙打开或者砸开. By ...

  8. 机器学习(九)—逻辑回归与SVM区别

    逻辑回归详细推导:http://lib.csdn.net/article/machinelearning/35119 面试常见问题:https://www.cnblogs.com/ModifyRong ...

  9. github添加ssh公钥

    使用git作为版本维护工具非常方便,而且一般个人用github作为远端库就够用了.而一般git连接github的方式采用ssh的方法,http的会略微慢一些.所以为了方便一般会在github设置中添加 ...

  10. c macro pair

    成对使用的macro, 不过也有机会用错, 死都不知道怎么死的, 这宏... #define pthread_cleanup_push(func, val) \ { \ struct __darwin ...