我是C#的新手。我试图在unity3d中使用opencv asset进行blob检测。
我收到此错误:
第89行之后的NullReferenceException:未将对象引用设置为对象的实例
(我称之为detector.detect)统一控制台将我指向FeatureDetect.cs代码中的第230行(opecv库的一部分)。
我试图解决这个问题很长一段时间以来,任何帮助都非常感谢!
以下是我的代码:
typeid
答案 0 :(得分:0)
试试这个
detector = new FeatureDetector(); //assuming it has a default constructor.
detector = FeatureDetector.create(FeatureDetector.SIMPLEBLOB);
Debug.Log ("detector created");
//detector.detect(
**detector.detect(GrayMat,keypoint1);**
Debug.Log ("keypoints created");
<强>更新强>
如果你检查我对探测器的评论= new FeatureDetector();我添加假设它有一个默认的构造函数。现在你遇到的新错误只是说FeatureDetector
类没有。
在C#中,默认情况下,如果没有默认构造函数,它将构成默认构造函数,但如果在默认构造函数之前首先创建参数构造函数,它将以某种方式创建它。
现在你必须手动添加它。只需打开FeatureDetector类并添加此行
即可public FeatureDetector(){}
就是这样。尝试再次运行您的代码。