1

I am a newcomer, and new to programming as well, though i am kind of enthusiastic to learn about image/video processing.

It might be impossible, or some of you may have already done it, i am not sure that's why i am here, I would like to create a real time video processing program for my android phone. I will describe my intentions with the program in details:

-The program should be able to detect certain objects at least 3 different objects or more -The program should also be able to detect a color. - I would like to use the program to calculate speed. For example let's take a giant ferris wheel. There is the controller cabin right infront of it, and we can see the passenger cabins as well, with different colors. -The controller cabin is steady however the wheel and with it the passanger cabins spin at a particular speed. -So i would like to know if it is possible to determine the ferris wheel's speed by appointing a red colored cabin ( there is only one red colored cabin) and use the controller cabin as a reference point. I would like to calculate the speed by knowing my mobile's camera fps rating for instance : 120 fps. I believe it is possible to calculate the speed by taking into account that how many frames does it take for the red cabin to get in line with the controller cabin. As i have mentioned my intention is to use it as a real time video processing method because the speed might change during that time and i woud like to have constant update of the wheel's speed.

So my question: Is it sort of possible to achieve this with an android smartphone with a 120 fps camera? And which programming language would you recommend for me to do my project in. I have done programming in C , but if Java or Python is more suitable for an android based program, i would start learning them. If this is possible to do, i could use some advice with real time video processing as well. Example programs and so on.

Thank you for reading my topic, i hope i could describe my intentions well, but if there is something , which is not clear, i will try it again differently.

JeremyDouglass
  • 1,361
  • 2
  • 18
  • 31
Kugelkopf
  • 33
  • 1
  • 7

1 Answers1

0

Is it possible to achieve this with an android smartphone ?

Yes, you can do image processing with an Android smartphone app.

You are interested in blob tracking and/or optical flow. This calls for a computer vision toolkit; a good starting point is OpenCV for Android. The official OpenCV page gives advice for newcomers:

There are two major types of OpenCV4Android beginners, first group is new to Android, and the second – to OpenCV.

  1. If you’re an experienced OpenCV adept and you want to start with Android, you should remember, that Android is not desktop OS, you should prepare yourself for mobile development. ...
  2. If you’re a confident Android developer, but you need some information on OpenCV, please have a look at the documentation ...

If you are a beginner at programming in general then mobile app development for image processing / computer vision is going to be a very steep hill to climb.

One slightly more gentle introduction:

  1. Start with the Processing language on the desktop. Begin with basic sketches.
  2. Try OpenCV for Processing to add basic image processing and computer vision to your sketches.
  3. Use Processing for Android -- a.k.a. Android mode -- perhaps in Eclipse -- to develop a Processing / OpenCV sketch for mobile. At this point you may have switched to the official OpenCV Android library. For more see: Use Processing and Opencv For android development?

Your specific example of tracking the rotations of a colored object around the hub of a wheel is more complex than the introductory examples you will find. I would suggest getting a handle on introductory programming and basic blob tracking first, then ask a separate StackOverflow question when you have all the basics working and are ready to tackle the angular aspects of the ferris wheel problem.

Community
  • 1
  • 1
JeremyDouglass
  • 1,361
  • 2
  • 18
  • 31
  • Thank you very much Jeremy! I will start with the basics as you advised, and later i will specify my questions. – Kugelkopf Dec 19 '16 at 08:49