본문 바로가기
프로그래밍학습/opencv및 비젼

32bit로 opencv 사용하기 - opencv_world000.dll 기호가 로드되지 않았습니다.

by 해리보쉬 2021. 4. 14.
728x90
반응형

현재 사용하는 visual studio 2019 기준으로

(그러니까 64bit) 로 openCV는 3.4이상 버젼으로

머신러닝 비젼 프로그램을 제작하였습니다.

원래는 파이썬으로 제작한 것을 c++에 맞게 다시 수정한 것입니다.

https://blog.naver.com/jjiangbbang/222286175542

 

c++ hog ,svm 사용하기 예제

https://github.com/spmallick/learnopencv/commit/52c0c5e09358ef64fe502221dcd0641fd20f9fb2대부분 머신...

blog.naver.com

728x90

머신러닝 그중에서 제일 기본이 되는 hog 디스크립터와 svm은 사실 거의 모든 예제가 파이썬이죠

그런데 저는 제작해서 dll로 만들어 설비업체에 전달해야하고

c++에 맞게 제작해야되서 간단한 UI제작해서 만들어내고 dll로 만들어 배포는 했습니다만

헉!!!

업체 설비는 visual studio 2010에 32bit(win32) 환경이랍니다.

이런게 문제입니다. 실제로 현장에서 필요한 지식은 이런건데 인터넷엔 학습용 예제가 너무 많아요

그런거 그대로 쓰는 경우가 잘 없습니다.

이러면 당장 문제가

-openCV를 32bit로 사용해야 되는데 3.0버젼까지 제공됩니다.

-2.x버젼에서는 mat함수가 아니고 iplimage를 써서 코드 전체를 또 바꿔야되서 3.0을 씁니다.

그런데 문제가 잘 작동하던 코드가 프로젝트를 wni32로 opencv를 32bit로 (x86)으로만 쓰면

opencv_world300.dll기호가 로드되지 않음

이 뜨면서 SVM함수가 제대로 로딩이 안되면서 객체 생성이 안됩니다.

https://okky.kr/article/519785

 

OKKY | opencv_world341d.dll에 대해 기호가 로드되지 않음에 대해 질문드립니다.

안녕하세요 svm 을 이용한 물체인식을 진행중에있는데요 우선코드를보여드리겠습니다. Mat trainingData, labels; read_trainData( ../ImageExam/SVMDATA.xml , trainingData, labels); Ptr ml::SVM svm SVM_create(CV_TERMCRIT_ITER,

okky.kr

여기에 동일 현상있으십니다.

이거 인테넷에 구글링해서 기호 로드하고 뭐 어쩌고 하는 모든 방법이 안됩니다.

애초에 요즘 2021년! 이 시기에 32bit로 opencv를 사용하고자 하는 사람이 없거든요

저는 32bit로 꼭 써야만 하는 상황이라 썼습니다.

무슨 짓을 해도 안되던거....

결국 visual studio 2010 깔고 성공했습니다.(2019에서도 빌드는 됩니다.32bit로 SVM이 제대로 동작안할 뿐이지...)

opencv를 32bit로 써서 프로젝트를 해내려면 처음부터 2010으로 접근한번 해보세요

2013도 안되더군요.

728x90
반응형

'프로그래밍학습 > opencv및 비젼' 카테고리의 다른 글

c++ hog ,svm 사용하기 예제  (0) 2021.03.24

댓글