到目前为止,OpenCV JAVA的早期版本提供了get()
和put()
方法,以获取和操作Mat图像中的各个像素。但是在Java3.0.0-1.1JavaAPI中,这些方法被废弃了。那么在这个版本中,如何处理单个像素呢?
下面列出了一些不推荐的方法:http://bytedeco.org/javacpp-presets/opencv/apidocs/deprecated-list.html
当我在HIPIv2.0中使用put()
方法(它支持最新的OpenCV API)时,我得到以下错误:
显示误差的图像
我能做些什么来改变特定的像素(给定索引)?
发布于 2015-12-16 06:46:31
推荐的方法是通过本文中介绍的索引器:
http://bytedeco.org/news/2014/12/23/third-release/
例如,在典型的BGR/RGB 8位映像中:
UByteIndexer idx = mat.createIndexer();
idx.put(x, y, z, 255);
assert idx.get(x, y, z) == 255;
https://stackoverflow.com/questions/34297389
复制相似问题