Get Started with Open CV image recognition - ios

I am trying to make an app for image recognition with Open CV, i want to implement something like this but i don't know how should i do it can any one give me any help where should i begin from i have downloaded Opencv for iOS from here,
I have a hardcopy of image as an example which i want to scan through the camera and the images(markers) i have imported in project now when i scan the image through camera then it should overlay the markers on the image and when i tap/select the marker it should show the info of that marker.
Here is my image :
It's just an example i have taken (Square,Circle and Triangle as Markers)
So now when the image is scanned then the markers will come up as an overlay and on clicking the markers i should get the names (If the Overlay image over the Circle Named "Air" is tapped it should show me "Air" on an alert or if Square Named "Tiger" is tapped it should say "Tiger")
My problem is that the images are kind of same pattern but the result is different on every part so i don't know how should i approach in this ..
Please can any one help me out by suggesting any idea or if any one has done thing like this please tell me how should i implement it.
I have to start from scratch any help please .
Can this be achieved using Open CV or i have to use any other SDK such as vuforia or layar.

Maybe you should search a little bit before asking help...
Anyway, the shapes you want to find do not seems to change (scale, rotation) so, you can look at the template matching methods implemented in OpenCV (see Tutorial OpenCV)
If the shapes are changing, you should look at more powerful methods such as SIFT or SURF. Both are already implemented in OpenCV (the link from aishack is a tutorial to re-implement SIFT, you can find in the same website a tutorial to use the OpenCV method).

Related

Suggestions to place points on a floor plan

I need some directions (tutorials, examples, etc) to help me to figure out how I could, from a floor plan (ex: png file for now), place some points/icons to different locations and be able to zoom in/out, drag and rotate.
In fact, a bit like google map, with only basic stuffs.
Thanks
Take a look at the Grid List Demo in Flutter Gallery:
https://github.com/flutter/flutter/blob/master/examples/flutter_gallery/lib/demo/material/grid_list_demo.dart
It features an Image viewer with zoom and pan support.
(You can also find the Gallery on the Play Store)
Instead of using a simple image, use a Stack that overlays Positioned widgets over your image.

Ios how to recognize a simple Logo on a white background?

I'm trying to write an app that recognize a logo saved in app bundle and readed as UIImage. I have did a search before make this question, the only free solution seems to be OpenCv. I have tried it in a demo i had download from toptal_logo_detector . The demo works and i can find my logo everywhere i place it. Anyway the camera is very slow, too slow to use it in a real app. Maybe there's a way to optimize it, but my question is another.
I have to recognize a vector logo (always the same logo) centered in a white background ,something like this wifi logo:
My only solution is the complex OpenCV? There's a free and simpler way to achive the result: YES here there's your logo/No there isn't ?
I found this tutorial (with project download) that does what you want using OpenCV

image processing library for colour identification

I am going to use Unity 3D to create a Flood Management game.In the game,I will project a terrain created in Unity and the user will place objects like dams,levees etc.All these objects need to be recognized via a camera using some image processing technique.Any ideas as to how I should go about this?We thought of placing QR codes on these objects, but that wont work as we will have to recognize multiple QR codes from one image which is probably not feasible.Also, are there any other efficient methods
Wow lots of nice ways to do this.
Easiest: Color tracking using colors
Harder but more interesting: Use Vuforia plugin with markers.
Stephane

AV Foundation Capture Image

My basic task is to capture a part of an image and then use it. To give you an overview, I am creating an app based on OCR, I allow to user to take a picture using camera. However, rather than processing the entire image, I only want some part of it to be selected and send for processing (Preferably a rectangle). So, to sum it up, I want an overlay to be provided, and I want the image inside that overlay to be further used rather than the entire clicked image.
Now, by my understanding, I realize that AVFoundation is the tool to capture the image, however in my app I have used UIImagePicker. I am totally confused since I am a newbie and not sure hot to proceed ahead. Appreciate all for the help. Thanks again
There is fine open source library for OCR in iOS :
https://github.com/nolanbrown/Tesseract-iPhone-Demo
This will work best if the image resolution is 150 * 150 . For more in formation of other libraries you can also refer the SO question:OCR Lib

to rotate template image and perform template matching

I want to rotate given template image at different angles (eg. 30, 60, 90, ...) and then I want to match the rotated images with a source image to detect objects using opencv functions (I'm writing C code)...
How can I do this using opencv functions? Or is there any other solution?
ya i'd searched SOF and that function is not passing rotated image to the main progrm. . . . .
and the other code given in SOF continuously rotating the image. so using this we cant do teplate matching.
is there any other codes to solve this problem?
Template matching is not a good choice to match rotated targets.
You better check the openCV module Features2D.
You'll want to take a special look at the examples for the Feature Matching and Homography. Both contains the functional source.
For furthers details and a great explanation on the topic you can check Innuendo's answer to a similar question here:
scale and rotation Template matching

Resources