Ask Your Question

tmanthey's profile - activity

2020-03-18 06:26:11 -0600 received badge  Popular Question (source)
2018-10-29 06:37:59 -0600 received badge  Good Question (source)
2018-10-29 06:35:49 -0600 received badge  Good Question (source)
2017-02-09 11:13:34 -0600 received badge  Notable Question (source)
2016-08-07 11:40:28 -0600 asked a question 3.1 build for "armeabi-v7a with NEON" fails

On my OSX machine I added -DANDROID_ABI="armeabi-v7a with NEON" to the cmake command in platforms/scripts/cmake_android_arm.sh

When I now execute make -j5 in build_android_arm directory I get following compiler error:

opencv/modules/core/src/convert.cpp: In function 'void cv::cvtScaleHalf_(const T*, size_t, DT*, size_t, cv::Size) [with T = float; DT = short int; size_t = unsigned int; cv::Size = cv::Size_<int>]':
/Users/tmanthey/Documents/Development/opencv/modules/core/src/convert.cpp:4582:31: error: 'float16_t' was not declared in this scope
                     vst1_f16((float16_t*)(dst + x), v_dst);
                               ^
/Users/tmanthey/Documents/Development/opencv/modules/core/src/convert.cpp:4582:41: error: expected primary-expression before ')' token
                     vst1_f16((float16_t*)(dst + x), v_dst);
                                         ^
/Users/tmanthey/Documents/Development/opencv/modules/core/src/convert.cpp:4582:58: error: 'vst1_f16' was not declared in this scope
                     vst1_f16((float16_t*)(dst + x), v_dst);
                                                          ^
/Users/tmanthey/Documents/Development/opencv/modules/core/src/convert.cpp: In function 'void cv::cvtScaleHalf_(const T*, size_t, DT*, size_t, cv::Size) [with T = short int; DT = float; size_t = unsigned int; cv::Size = cv::Size_<int>]':
/Users/tmanthey/Documents/Development/opencv/modules/core/src/convert.cpp:4634:51: error: 'float16_t' was not declared in this scope
                     float16x4_t v_src = vld1_f16((float16_t*)(src + x));
                                                   ^
/Users/tmanthey/Documents/Development/opencv/modules/core/src/convert.cpp:4634:61: error: expected primary-expression before ')' token
                     float16x4_t v_src = vld1_f16((float16_t*)(src + x));
                                                             ^
/Users/tmanthey/Documents/Development/opencv/modules/core/src/convert.cpp:4634:71: error: 'vld1_f16' was not declared in this scope
                     float16x4_t v_src = vld1_f16((float16_t*)(src + x));
2016-04-03 00:09:23 -0600 received badge  Notable Question (source)
2015-12-07 19:29:16 -0600 received badge  Taxonomist
2015-10-11 05:43:41 -0600 received badge  Teacher (source)
2015-09-01 02:47:30 -0600 received badge  Nice Question (source)
2015-08-24 07:57:48 -0600 received badge  Popular Question (source)
2014-07-21 08:10:24 -0600 received badge  Popular Question (source)
2014-03-30 06:15:38 -0600 asked a question SIGSEGV in LBPEvaluator::Feature::calc

I have SIGSEGV in OpenCV 2.4.8 on Android with the following crashdata. Anyone has an idea what goes wrong?

StackTrace:

(cv::LBPEvaluator::Feature::calc(int) const+5)
 (int cv::predictCategoricalStump<cv::LBPEvaluator>(cv::CascadeClassifier&, cv::Ptr<cv::FeatureEvaluator>&, double&)+164)
 (cv::CascadeClassifier::runAt(cv::Ptr<cv::FeatureEvaluator>&, cv::Point_<int>, double&)+248)

Full Crashdump:

Build fingerprint: 'samsung/ha3gjv/ha3g:4.4.2/KOT49H/N9000QXXUDNB3:user/release-keys'
Revision: '11'
pid: 9554, tid: 9821, name: ProcessorThread 
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 2d40d7d4
r0 2d40d7b0 r1 000002d5 r2 7855be00 r3 bb4eb19b
r4 000004a0 r5 00000000 r6 00000940 r7 7c2a0c38
r8 7363f210 r9 00000008 sl 7a69fcc8 fp 7855a218
ip 000000e1 sp 7a69fbc0 lr 7873a7a9 pc 787385a2 cpsr 00030030
d0 4330000000000141 d1 4074100000000000
d2 000000880000036e d3 0000003100000000
d4 bff0000000000000 d5 0000001900000000
d6 4039000000000000 d7 bfe63819a0000000
d8 0000000000000000 d9 3ff3333340000000
d10 0000000000000000 d11 0000000000000000
d12 0000000000000000 d13 0000000000000000
d14 0000000000000000 d15 0000000000000000
d16 4074100000000000 d17 4330000000000000
d18 416312d000000000 d19 3fdfffff94a03595
d20 3fe319979fffffff d21 000000000003fbf8
d22 0000000000000008 d23 0000000000800000
d24 43353489b62ca24d d25 3fd554fa9ca0567a
d26 3fdb6db71408e660 d27 3fe33333332d4313
d28 3ff0000000000000 d29 0000000000000001
d30 3ff0000000000000 d31 3ff6345785d8a000
scr 80000010

backtrace:
00 pc 000b15a2 /data/app-lib/liba.so (cv::LBPEvaluator::Feature::calc(int) const+5)
01 pc 000b37a5 /data/app-lib/liba.so (int cv::predictCategoricalStump<cv::LBPEvaluator>(cv::CascadeClassifier&, cv::Ptr<cv::FeatureEvaluator>&, double&)+164)
02 pc 000b3e09 /data/app-lib/liba.so (cv::CascadeClassifier::runAt(cv::Ptr<cv::FeatureEvaluator>&, cv::Point_<int>, double&)+248)

code around pc:
78738580 f218f89b a828eb46 f896f7ea eb40f218
78738590 f7eaa836 f218f891 bf00eb3c 0ff0e92d
787385a0 6a46b086 6b426a85 f8566903 f8556021
787385b0 f8d05021 f852a014 6a072021 c018f8d0
787385c0 b021f853 f8d01b73 1a9b8030 a021f85a
787385d0 6b839301 0b0bebca 7021f857 c021f85c
787385e0 4021f853 0b0bebc7 3021f858 0a0aebcc
787385f0 ebc61bbf 97020a0a 9f0144b3 93036cc6
78738600 f8d0193b 455b802c f04fbfd4 f04f0b80
78738610 6c870b00 901cf8d0 a000f8cd f8dd9605
78738620 9e03a008 f8589704 ebc67021 6bc6080a
78738630 f8594490 f8569021 ebc9a021 f8d00c0c
78738640 ebc59044 f8cd0c0c 44bcb004 45636c00
78738650 f04fbfd4 f04f0c20 90020c00 eb059800
78738660 98040b00 bfd4455b 0b40f04f 0b00f04f
78738670 b010f8cd b014f8dd 1b2d1bed 6021f850

code around lr:
7873a788 2703fb04 009c9b06 3006f85b 2014f8d8
7873a798 1098f8d8 0383eb03 1003eb02 fefaf7fd
7873a7a8 11421d23 001ff000 2022f857 f000fa52
7873a7b8 07c19a01 4623bf48 ed9318d3 eeb77a00
7873a7c8 35017ac7 9b003610 454d3408 ee38441f
7873a7d8 ed8a8b07 d1d78b00 ed939b04 eeb77a02
7873a7e8 9c027ac7 19649a06 eb029402 92060245
7873a7f8 7bc8eeb4 fa10eef1 9a05dc1a 9c089b03
7873a808 330c3201 42a29205 d1a69303 b00b2001
7873a818 8b02ecbd 8ff0e8bd ed939b04 eeb77a02
7873a828 ed9f7ac7 eeb48b05 eef17bc8 dde4fa10
7873a838 42609c05 bf00e7eb 00000000 00000000
7873a848 4ff0e92d 8b02ed2d 69c3b089 680f4693
7873a858 8034f8d0 9a069306 1a9b6a03 109b6c02
7873a868 eb039200 eb020283 eb021202 eb022202
7873a878 eb034202 92070242 dd5c2a00 93012300
2014-03-10 07:24:59 -0600 received badge  Nice Question (source)
2014-03-10 05:09:25 -0600 asked a question Where to put job offers?

Hi,

Evotegra GmbH is looking for an opencv expert. We offer over average salary. Job is mostly done in home office. Preferably in Germany. Applications please to info at evotegra dot de.

Is there a job board, where I could put a more detailed post?

2014-02-28 04:41:17 -0600 received badge  Self-Learner (source)
2014-02-28 04:28:01 -0600 commented answer How to compile OpenCV 2.4.8 static libs using MinGW on Windows 7

Not the solution, but still it helped very much to find it.

2014-02-28 04:26:49 -0600 answered a question How to compile OpenCV 2.4.8 static libs using MinGW on Windows 7

Not a typo but still my fault.

I am using CmakeUI.

What I did was:

  1. Press Configure
  2. Uncheck BUILD_SHARED_LIBS
  3. Press Generate
  4. Compile

That is one jump short. Correct order is: Start CMakeUI

  1. Press Configure
  2. Uncheck BUILD_SHARED_LIBS
  3. Press Configure
  4. Press Generate
  5. Compile
2014-02-27 15:05:23 -0600 asked a question How to compile OpenCV 2.4.8 static libs using MinGW on Windows 7

In Cmake I set BUILD_SHARED_LIBS to false but the results are exactly equal to the results when setting the flag to true. GCC Version is 4.8.1.

2013-06-30 06:30:05 -0600 received badge  Self-Learner (source)
2013-06-05 08:48:07 -0600 received badge  Nice Question (source)
2013-01-21 10:07:29 -0600 commented answer Load cascade classifier from memory?

you've got a hint on my below problem?. tia

2013-01-21 09:57:40 -0600 answered a question Load cascade classifier from memory?

Unfortunately it is not really working out. The problem is that there is now way I know to copy a buffer from Memory to the FileStorage.

I got until here.

    unsigned char cascadeBuffer[102400]; /* contains the complete cascade xml 
    <?xml version="1.0"?>
    <opencv_storage>
    <cascade>
    ...
    </cascade>
    </opencv_storage> */

int cascadeBufferLength; // the size of the cascade in the buffer

FileStorage fs("cascade.xml", FileStorage::READ|FileStorage::WRITE|FileStorage::MEMORY | FileStorage::FORMAT_XML);

But now what? I tried FileStorage::writeRaw but thats not quite what the name suggests.

2013-01-19 02:21:38 -0600 answered a question Linker error

OpenCv consists of many libraries. Attached you can see my linker configuration I commonly use. But these are not all libraries available. So depending on what you do, you need to add other opencv libs. image description

2013-01-18 12:48:04 -0600 answered a question Recognizing text in an Image?

As a starter you might want at this http://my-tech-talk.blogspot.de/2012/06/digit-recognition-with-opencv.html">codesample that does Digit Recognition .

2013-01-18 12:45:13 -0600 asked a question How to copy a buffer to in memory FileStorage?

I am still trying to load a classifier from memory.

I got until here.

    unsigned char cascadeBuffer[102400]; /* contains the complete cascade xml 
    <?xml version="1.0"?>
    <opencv_storage>
    <cascade>
    ...
    </cascade>
    </opencv_storage> */

int cascadeBufferLength; // the size of the cascade in the buffer

FileStorage fs("cascade.xml", FileStorage::READ|FileStorage::WRITE|FileStorage::MEMORY | FileStorage::FORMAT_XML);

But now what? I tried FileStorage::writeRaw but that did not do it. Thanks for your ideas?

2013-01-17 10:34:27 -0600 received badge  Scholar (source)
2013-01-17 05:04:27 -0600 answered a question camera preview gives gray images

what's the scalar doing in the constructor. I am not using the java api, but try something like

Mat src = new Mat(previewSize.height, previewSize.width, CvType.CV_8UC1, data);

notice the C1 at the end.

afaik the yuv frame starts with a black and white image

2013-01-17 04:46:56 -0600 asked a question Load cascade classifier from memory?

Is it possible to load a cascade classifier from memory? I would like to store it encrypted on disk and then load the decrypted classifier from memory.

2012-12-14 04:22:09 -0600 commented answer Building OpenCV with Visual Studio 2012

That's correct. Had the same problem with the same solution.

2012-12-14 04:21:31 -0600 received badge  Supporter (source)
2012-12-14 02:48:09 -0600 asked a question Tips on how to build opencv 2.4.3 (VC10)

The release notes state:

"Much better performance on many-core systems out of the box. You do not need TBB anymore on MacOSX, iOS and Windows. BTW, the binary package for Windows is now built without TBB support. Libraries and DLLs for Visual Studio 2010 use the Concurrency framework."

My aim is to run opencv_traincascade on a multi-core machine on Windows 7/VC10. I built OpenCV 2.4.3 without TBB on my machine with VC10. But when I run it it seems using only a single core.

How to I build with "Concurrency Framework" or do I have to still use TBB for train_cascade? CMake offers still the build option "with TBB" but no entry to specify the TBB file location.

tia

2012-12-14 01:58:04 -0600 answered a question Detect Only circles using the openCV

Try using Hough-Circles. After playing with the parameters this is actually quite good in detecting circles.

2012-10-27 08:42:17 -0600 commented question OpenCV Manager cannot detect hardware of the Android emulator

Confirmed fixed in 2.4.3 RC

2012-10-06 15:10:17 -0600 asked a question Occasional crashes in cv::CascadeClassifier.detectMultiScale

From time to time I get this exception:

"X:\Dev\git\opencv-2.4\modules\imgproc\src\shapedescr.cpp:799: error: (-201) Number of points should be >= 5 in function CvBox2D cvFitEllipse2(const CvArr*)"

This happens when running opencv on android 4.0.4. We use the latest opencv manager with up to date 2.4.2 neon module.

Any ideas howto avoid this?

2012-09-14 07:15:35 -0600 answered a question Installing Sample App / OpenCV Manager

For the Tegra 3 there is a special opencv 2.4. pack .

Maybe you want to try this.

2012-08-14 01:13:26 -0600 asked a question continue traincascade after computer crash

I was calculating a classifier for several days when the computer crashed. Now I would like to continue where I stopped. But when I issue the same command (with the same directories) again train_cascade only says

"Stages 0-9 loaded"

and exits.

How can I continue where I stopped?

Tia

2012-08-13 02:36:34 -0600 commented answer Get a probability out of svm->predict

I tried setting the params to CvSVM::EPS_SVR. My program has a self test loop where it asserts that the training samples are classified correctly. Using EPS_SVR the self test fails. What would be a good setting for the p parameter? I tried these values CvSVMParams svm_param = CvSVMParams(CvSVM::EPS_SVR,CvSVM::LINEAR, 10,8,1,10,0.5,0.1,NULL,cvTermCriteria(CV_TERMCRIT_ITER+CV_TERMCRIT_EPS, 100000, 0.00000000001) );

2012-08-13 02:31:33 -0600 received badge  Student (source)
2012-08-13 02:19:17 -0600 asked a question opencv_traincascade with same size negatives (as positives)

We trained an LBP classifier and currently we dump all detections to disk. The size of these detection images is the same size we use for the positive samples (24x24).

What I would like to do now is to create a feedback loop in the training process. In other words. Use my false positives detection images to tell opencv_traincascade what is NOT our desired result. Current negatives are quite unspecific. Basically I would like to specify a "negatives.vec" file.

However the documentation states that the negatives must be larger than the positives.

What's the best way to include these false positives in a run of opencv_traincascade?

2012-08-13 00:59:42 -0600 asked a question Get a probability out of svm->predict

I have trained an SVM with 6 classes.

I want to determine if my picture belongs to one of the classes and if yes to which class.

Currently I use this code

CvSVM *pSvm = new CvSVM();
pSvm->load("filename.xml", 0);
float pred = pSvm->predict(detectionImage);

The problem with this code is that no matter what picture I send to the svm it always return one out of my 6 classes. So to filter the pictures which belong to none of the classes I would need the probability that this picture belongs to my class.

e.g.
Currently I only get the information that my picture belongs to class N (pred)

What I would like to get is: Picture belongs to class N with a probability of P

Then I could put a threshold on the probability to filter out my negatives.

If this is not working what is suggested way to filter out the negatives?

Thanks