unity3d中的blob检测:NullReferenceException

时间:2015-04-26 21:20:52

标签: c# opencv unity3d feature-detection opencvsharp

我是C#的新手。我试图在unity3d中使用opencv asset进行blob检测。

我收到此错误:

  

NullReferenceException:未将对象引用设置为对象的实例

第89行之后的

(我称之为detector.detect)统一控制台将我指向FeatureDetect.cs代码中的第230行(opecv库的一部分)。

我试图解决这个问题很长一段时间以来,任何帮助都非常感谢!

以下是我的代码:

typeid

1 个答案:

答案 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(){}

就是这样。尝试再次运行您的代码。