yea, that’s the real interesting part here
take a lot of images, vary lighting a lot, and pose a little, i guess
Vary lightingl as ambient light ?, or spot light position?
For ambient light, how much more Brighter + Darker from the neutral, where +100% is Pure White, and -100% is pure black. E.g. ± 10%.
Pose; Rotataion along all axis ?. (x, y, z). How much degrees per axiis (minumum to maxium) ?. E.g. 10 - 20 degrees,
Does scale matter ?. (As in the .VEC files, they will take the dimentions of the .VREC due to thier bounding box iinformation being used and resized to the .VEC dimensions.). I ask as the opencv_createsamples.exe program and also the tutorial show how to create samples, and with different sizes as a varying factor.
- maybe template matching already works. just make sure NOT to use any _NORMED method there, so you can compare the probabilities
I have experienced templae matching, using the tutorial. I do not think it will work for me due to the following;:
- Object will not have fixed size
- Object will not have fixed angle in any axis. Will have approx upto 20 degrees rotation in each axis.
- Object Image will not have same contrast or brigtness; it will be taken spanning different times of the year and day (e.g. winter, summer, and day and evening(
Am I correct that due to the above, Template Matching is not suitable?.
- split the detection from the classification, e.g. find contours, if they coarsely match your expectations, crop the region and throw it at a multiclass classifier (e.g. an SVM)
You mean do not use a HOG Multiscale Detector. And use image proccsing tehcniques to target contours,that maybe the object, and then provide the section of image that corresponds to the contour region to a SVM, that has been training on an example?.
I do not think it would work in my case. As the items can be situated where they are surrounted by complex patterm/edge. So it will not work a good percentage of the time, Also the shapes of the objects also make it difficult to filter out contours.
I have read the HOGDescripotor object detection tutorial (that used SVM). THis tutorial is all the knowlege I have about SVM. I found the source code, the way it was structured difficult to follow, so some parts are difficult to remember/understand. So I ask; In the tutorial, 2 objects types were given to the SVM to be trained, each with an index/description/label, This was an example of Positive vs Negative. How would I use SVM as a multiclass classifier?, does it allow more than 2 objects and index/description/labels ?.
* what everyone else does: deep learning. (re-)train a yolo5 (pytorch) dnn on colab, using roboflow for annotations / preprocessing
Yes. I considered that, If OpenCV supported creating/training the models, I would have tried. I am currently within OpenCV and not Deep Learning. I want to try/experience/exhust what opencv can do, then year(s) later I will move into Deep Learning.
Am I correct that Deep Learning, on a CPU, with a HD 1280x720 720p image, will be slower than Haar Cascade, what percent slower?.
With Deep learning multiobject detection/classification (1 model detects serveral object types), how does speed of detection increase, from a model with just 1 object to recognise, to more, say 5, 10, 15, etc ?.