2016-06-14 08:42:26 -0600 | received badge | ● Student (source) |
2014-10-29 13:32:48 -0600 | received badge | ● Nice Answer |
2014-07-31 03:07:15 -0600 | received badge | ● Teacher |
2014-07-31 02:14:27 -0600 | received badge | ● Necromancer |
2014-07-30 12:17:57 -0600 | received badge | ● Editor |
2014-07-08 12:02:09 -0600 | asked a question | Estimation of 4-point Polygon in Contour Hi, I have some problem with creating algorithm which will be able to create biggest possible. So far I was only estimating the biggest inscribed Rectangle. Example output: I want to gave 4-point polygon like this blue: So far I get following result: As you can see. I only change left upper corner. The pseudo-code which done it is following: In fact, I do not do all all possible permutation, because it will take ages to finish. Do you maybe face any similar problem or know how to resolve it in finite time? |
2014-07-01 09:23:01 -0600 | answered a question | How can I add my own feature code into sticther pipeline of OpenCV? Hi, There is no easy way to use SIFT features in stitching module. You have to create separate class like "detail::SiftFeaturesFinder" to do it. New class should be added in "opencv/modules/stitching/src/matchers.cpp" and "opencv/modules/stitching/include/opencv2/stitching/detail/matchers.hpp" This should be rather easy, because all process relay on extracting features. If you need to set only specific region for keypoint extraction, you need to build black-white mask -> your new class should take it too. All work need changes in OpenCV, so after all you need to recompile it. |
2014-03-23 03:13:25 -0600 | answered a question | Adaptive threshold First of all, read this documentation and see how the result look: DOCS You should deeply analyse the result from chessboard - there you can see, that adaptive threshold is sth like edge detector. It will detect (set maximum value in you case) only the pixels, which in their local neighborhood has bigger value that "MEAN" + "C". So, the value from pixels ex. (0,0) and (1000,1000) are independent. As I say, this function will detect you edges, not blobs. In this situation I suggest do sth like to detect blobs: - adaptiveThreshold: find edges in image - findContur: make connected component algorithm (you may to use OPEN or CLOSE morphological operation morphology to delete singe pixels or to connect to edges) - find biggest contour (by area or number of points) and fillPoly it with white color After this operation you should get sth like you want. |
2014-01-30 12:39:18 -0600 | answered a question | Optimising OPenCV4Android image processing First of all, do you use Java wrapper to OpenCV(in NDK) or you write own function in NDK which use OpenCV? Each calling wrapper from Java to NDK is very expensive, time consuming really big. So I advice you to write own function in C++, compile it in NDK for Android and write one wrapper to it from Java code. If you doing it now, you should use multicore process ( 4 image processed in one time) |
2014-01-12 02:26:20 -0600 | answered a question | Is there a rotatational template-matching function? As I know, there is no function, that calculate the invariant version of matchTemplate. There is some article, which introduce it, but you will have implement it. Link:Link to article But, in OpenCv there is function, which compare histogram of objects and pattern. It is CalcBackProjPath. Histogram are invariant to rotation, so you can call it once. But it can be much slower, because it use normal Sliding Window. MatchTemplate in OpenCv use Fourier Transform, what really speed up finding interesting point. |