我正在尝试使用两种不同的级联分类器来识别两个不同的对象.我修改了面部识别样本,但我遇到了一个问题:当我尝试识别来自object1.xml的对象时,它会打印两个矩形,当我尝试识别来自object2.xml的对象时,它不打印不对...
问题出在哪儿??
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
@Override
public void onManagerConnected(int status) {
switch (status) {
case LoaderCallbackInterface.SUCCESS:
{
Log.i(TAG, "OpenCV loaded successfully");
// Load native library after(!) OpenCV initialization
System.loadLibrary("detection_based_tracker");
try {
// load cascade file from application resources
InputStream is = getResources().openRawResource(R.raw.object1);
File cascadeDir = getDir("cascade", Context.MODE_PRIVATE);
mCascadeFile = new File(cascadeDir, "object1.xml");
FileOutputStream os = new FileOutputStream(mCascadeFile);
/* By me */
InputStream is2 = getResources().openRawResource(R.raw.object2);
mCascadeFile2 = new File(cascadeDir, "object2.xml");
FileOutputStream os2 = new FileOutputStream(mCascadeFile2);
byte[] …Run Code Online (Sandbox Code Playgroud) opencv object-detection object-recognition cascade-classifier
我试着创建一个好的级联分类器几周,但似乎这个过程被神秘所包围.我有很多问题:
1)为什么opencv给我们这么少的信息?
2)它需要更多正面图像还是负面图像?
3)什么尺寸应该有正像?和负面形象?它们必须具有相同的尺寸?
4)如果我想创建一个分类为一个单一的路标是够像一个单一的正面形象,这与opencv_createsamples创建样?
5)创建一个在Android应用程序上使用的分类器是更好的哈尔或LBP?
6)正确的阶段数是多少?
7)minHitRate和maxFalseAlarmRate的正确值是什么?
android opencv object-detection object-recognition cascade-classifier