Hog-feature | HOG feature extractor with simple python implementation
kandi X-RAY | Hog-feature Summary
kandi X-RAY | Hog-feature Summary
HOG feature extractor with simple python implementation
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Extract the image
- Render the gradient
- Calculate the orientation of each cell
- Find the indices of the closest bin to the given gradient angle
- Calculates the global gradient of the image
Hog-feature Key Features
Hog-feature Examples and Code Snippets
Community Discussions
Trending Discussions on Hog-feature
QUESTION
So recently I tried to make a bot to fish in Minecraft as a challenge. (not that I use it in any community, or modify the game`s code so I guess its ok with TOS) My approach was and stays so far to track the movements of the bob.
My first bot relied on color space segmentation and finetuning the image with morphological transformations from OpenCV-python (as part of my learning experience I aimed to make the bot purely computer vision based). That bot only worked in specific location where I set illumination and environment color with in-game methods. Also it worked at expense of turning games graphics to lowest settings to disable particles.
My second bot used HAAR-like classifiers, since I already made few models for real life objects which were fairly good. Sadly this time (I assume due to the game`s unique graphic style where essentially everything is a cube with textures mapped on it) it was fairly inconsistent and caused a lot of false positives.
My third bot used HOG-features based svm but it was fairly slow for all models ranging from more then 4000 original samples with really fit bounding boxes to about 200, due to that lack of speed fish was of the hook when detection occurred.
My last attempt used tensor flow lite and failed miserably due to even worse detection speed.
I also looked into possibility of doing motion detection by comparing the consequent frames, and speed benefits of java vs python, as well as different preprocessing options like increasing contrast, reducing color pallet and etc.
AT this point I don't know if wondering 'blind' will give me any clues on what would be the 'to go' approach, and hence I decided to ask here.
Thanks in advance.
P.S. For exact specifics - I think the time to reel is approximately 0.7 seconds but I can be slightly off.
...ANSWER
Answered 2021-Apr-03 at 08:42For a fast and straight forward object detection technique, I would suggest you to use a pretrained retinanet. You can find all the explanation that you would need to know, from these links: https://github.com/fizyr/keras-retinanet
And follow this Collab, for fast training and straight forward implementation: https://colab.research.google.com/drive/1v3nzYh32q2rm7aqOaUDvqZVUmShicAsT
I would suggest that you resnet50 as backbone, and use the pretrained weights to start your training.
QUESTION
after spending some time learning basic computer vision concepts and techniques I started to notice how unreliable simple scripts can get when the luminosity or scale changes and how resource consuming is to use more advanced solutions like creating a well-made HAAR cascade or HOG-feature based svm. Furthermore, some even more advanced methods involving machine learning usually take a lot of time and GPUhours when a high quality model is created.
Recently while looking through YouTube I've found a lot of so called VTubers who use various software to control virtual avatars with somewhat precise motion tracking and what seems to be no errors whatsoever. While not something unimaginable, the amount of people using the software and the amount of software itself seems to be rather large.
Planning to investigate even further I looked into different ways similar technology works, but so far I only found a complex solutions involving either AI driven models or assistance from some sort of positional sensors attached to the body of the user. Still its hard to believe all of those people go through such measures, so I realised that perhaps this is accomplishable with some cv solution which is relatively easy on resource consumption. So far I looked into different ways to "map" model joints to human ones. On my own I tried basic counter matching, and greenscreen filtering to avoid errors. while I successfully managed to remove almost all errors, there still were moments when mapping snapped arm for example to elbow and etc.
How exactly is object recognition and motion tracking of such quality is achieved using only computer vision?
...ANSWER
Answered 2021-Jan-22 at 18:46I'd recommend looking at the OpenCV Tracking API. It implements various tracking algorithms out of the box. Here is a good introduction to object tracking in OpenCV that would be a good starting point. These approaches would be fast and efficient, but that only address the tracking part of your question.
Where the Object Detection (as in AI/ML, so maybe that goes beyond the 'computer vision' component of your question) factors in is identifying the object you want to track in the first place. Object detection would, of course, automate that. Object detection of discrete frames doesn't necessarily associate objects, so for example in video frame 1 you detect a vehicle, then in video frame 2 you also detect a vehicle: is it the same object or different? In this context object detection and tracking can work together to detect and then track objects (associating a unique ID) across frames.
Below is an example from the SORT multi-tracking algorithm, which is a fast and easy to implement tracker that works in conjunction with ML-based object detection:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install Hog-feature
You can use Hog-feature like any standard Python library. You will need to make sure that you have a development environment consisting of a Python distribution including header files, a compiler, pip, and git installed. Make sure that your pip, setuptools, and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid changes to the system.
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page