我正在将使用C ++的OpenCV中的函数转换为Java。 Link.
我对C ++知之甚少,并且很难转换这部分:
/// Set the ranges ( for B,G,R) )
float range[] = { 0, 256 } ; //the upper boundary is exclusive
const float* histRange = { range };
这是我到目前为止所做的:
//Set of ranges
float ranges[] = {0,256};
final float histRange = {ranges};
修改:
感谢您的帮助,我设法让它发挥作用。这个问题是在OpenCV的背景下(对不起,如果我没有说清楚)。代码:
//Set of ranges
float ranges[] = {0,256};
MatOfFloat histRange = new MatOfFloat(ranges);
答案 0 :(得分:4)
除非我今天误解了我的指针,否则c ++代码中的第二行会复制范围指针,因此它们都指向同一对值。你想要的Java应该是:
float ranges[] = {0,256};
final float histRange[] = ranges;
答案 1 :(得分:0)
感谢您的帮助,我设法让它发挥作用。这个问题是在OpenCV的背景下(对不起,如果我没有说清楚)。代码:
//Set of ranges
float ranges[] = {0,256};
MatOfFloat histRange = new MatOfFloat(ranges);