Ask Your Question
0

Illegal Instruction on createEigenFaceRecognizer

asked 2016-12-05 23:20:11 -0600

AMBTB gravatar image

updated 2016-12-06 20:07:21 -0600

Hi hoping someone can help us out. We have built OpenCV on an Intel Edison and the extended modules and got the very last stage of setting up the trainer but we are faced with Illegal Operation as soon as the code gets to:

Ptr<FaceRecognizer> model = createEigenFaceRecognizer();

We have tried suggestions about illegal instruction found on this forum but none of them have fixed it, could anyone help us fix it please? It is really very urgent. Thanks in advance.

edit retag flag offensive close merge delete

Comments

opencv /compiler version ? what is the exact error ? does it happen at compile or runtime ?

berak gravatar imageberak ( 2016-12-06 01:10:38 -0600 )edit

Hi thanks for the reply, the exact error is Illegal Instruction. OpenCV 3.1.0, it is using Intel IoT IDE and is i586-poky-linux-g++ It happens at runtime.

http://answers.opencv.org/question/18...

This was almost exactly the same situation, we have tried the solution but it also did not solve things. Could it be related to missing something that was required in ccmake it was the first time I have used ccmake so possible I missed something out when making.

AMBTB gravatar imageAMBTB ( 2016-12-06 07:58:16 -0600 )edit

yea, you can start to disable compiler options in cmake, but that's pretty much a "whack-a-mole" game ;(

berak gravatar imageberak ( 2016-12-06 08:19:09 -0600 )edit

Ok thanks, ugh. ;)

AMBTB gravatar imageAMBTB ( 2016-12-06 20:06:38 -0600 )edit
1

the constructor code for the EigenFaceRecognizer does not do anything special, i'd rather assume, it's cv::Ptr. if you could reproduce it with something simple as:

struct S { int x,y; };
void main() {
   Ptr<S> = makePtr<S>();
}

then you'd have good reason to progress to an official issue

(devs there probably have better ideas than we here !)

berak gravatar imageberak ( 2016-12-06 23:57:43 -0600 )edit
1

You missed variable ;)

Ptr<S> something = makePtr<S>();

That works fine no crash.

AMBTB gravatar imageAMBTB ( 2016-12-07 03:19:49 -0600 )edit

you're right ofc. (and thanks for testing) !

but again, try to come up with a minimal example reproducing your problem, and try an official issue

(i don't think, we can help you here, unfortunately)

berak gravatar imageberak ( 2016-12-07 03:21:25 -0600 )edit

1 answer

Sort by ยป oldest newest most voted
0

answered 2016-12-06 02:19:58 -0600

pi-null-mezon gravatar image

updated 2016-12-06 02:25:07 -0600

Try to explicitly point namespace of the opencv_face module

cv::Ptr<cv::face::FaceRecognizer> model = cv::face::createEigenFaceRecognizer();

edit flag offensive delete link more

Comments

Thanks will do.

AMBTB gravatar imageAMBTB ( 2016-12-06 07:58:28 -0600 )edit

Unfortunately that does not solve the error.

AMBTB gravatar imageAMBTB ( 2016-12-06 08:02:10 -0600 )edit

http://answers.opencv.org/question/18...

This was almost exactly the same situation, we have tried the solution but it also did not solve things. Could it be related to missing something that was required in ccmake it was the first time I have used ccmake so possible I missed something out when making.

AMBTB gravatar imageAMBTB ( 2016-12-06 08:04:38 -0600 )edit

When you build on Intel Edisson, no errors have occured?

pi-null-mezon gravatar imagepi-null-mezon ( 2016-12-07 01:00:13 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2016-12-05 23:19:02 -0600

Seen: 429 times

Last updated: Dec 06 '16