我正在尝试用java转换MATLAB代码,因为我正在使用android的OpenCv。
我想在java中实现MATLAB的这个函数im2double(Image)。他们在opencv或java中的任何现成函数都可以在android中实现。或者,如果有人已经实现了,我们必须实现我们自己的功能。我搜索过谷歌,但没有找到任何解决方案。
是,您可以使用等价于C++Mat::convertTo()
的函数,该函数在Java中作为实现
public void assignTo(Mat m, int type)
其中m
是目标矩阵,type
是要将数据转换为的数据类型/深度(在这种情况下,我认为您希望使用CV_64FCX
,其中'X'
是通道数)。
希望它能有所帮助!
http://docs.opencv.org/java/org/opencv/core/Mat.html#convertTo(org.opencv.core.Mat,%20int)
Mat someformat; // src
Mat doubleformat; // dst
someformat.convertTo( doubleformat, CvType.CV_64F );
注意,这只是改变了单个元素的类型/深度,而不是通道的数量