我已经用C++用OpenCV编写了一个图像处理例程。
现在,我正在将代码转换为Java,因为我比C++具有更多的Java技能。
我正在使用org.opencv.core.Scalar库中的Scalar数据类型。
在C++中,我能够像这样提取单个标量值
Scalar scalar = Scalar(1.0,2.0,3.0);
double value1 = scalar[0];
如果我在Java中执行此操作,则会收到错误“需要数组,但找到标量”。
如何在Java中从标量中获取单个值?
最佳答案
由于Scalars val字段是公共(public)的,因此您可以double value1 = scalar.val[0];
尽管直接访问字段有点不寻常,但是它们在API中没有提供get方法,因此这是正确的方法。
Scalar