I'm working on some language learning software and I want to use Windows and Samsung's existing handwriting recognition with in my program for the user to make calls to a database (a list of commands) that I'm going to create. I have the slightest idea on where to begin or even how this would work. I would really appreciate the help. Thanks in advance.
Samsung provides Pen as part of their Mobile SDK. I haven't used it myself but the documentation says it contains a text recognition engine. However, it seems you not only get the recognition engine but have to use the whole package.
Related
I want to integrate Face Recognition in Android.
1) First time user will sign up by scanning face (Will stored on Server/local)
2) Next time when a user tries, it should detect the user from the stored image.
I tried exploring Face Recognition of AWS but ended up with confusion in setting up.
there are multiple ways you can do this.
there is a simple library for this purpose in android called FaceDetector. you can use that for face detection only.
there are also more advanced libraries like OpenCV which is available for many languages including java and android. but I recommend if you are not familiar with android NDK or computer vision try sticking with the FaceDetector library.
note that if you start with OpenCV. it is going to be hard for you at first because you are entering a field called computer vision which is a branch of machine learning. and immediately you will feel it that you're walking in a completely new territory
Known that I'm very new in Machine learning.
I was thinking about a real world example of using Machine Learning
and Neural network in an application and I want to try it with a
mobile application who can handle image recognition with the front
camera after make an image of something(A cat for exemple).
I really need advice of tools to use to rapidly make a prototype of this application with a python backend that I will call via rest.
Thanks in advance.
I suggest if you are new to the machine learning algorithms, that you use an API from Google or Microsoft and get in touch with the flow and how it works .. Once you understand what are the inputs and outputs, you can try to replace the API for you own neural net, try to train it properly and collect results ..
Machine learning is not an easy concept and if you start big, there is a good chance that you'll get discouraged before you finish building it ... The API will provide you with a functional prototype very quickly and thus help you stay motivated to pursue it more ..
But to answer your question more directly, TensorFlow by Google is probably the most sophisticated tool for machine learning in general right now..
There is an excellent course for deep learning with TensorFlow made by Google on Udacity ..
You can follow PyImageSearch. It has lot of stuff related image processiong like face recognition and license Plate Recognition system. It also use neural networks.
Use an image recognition API, like google vision.
It is easy and fast to put in an application, and a lot more effective if you do not have experience and ressources in ML
I have done something similar for our company website. It is based on caffe though.
You can go through the source code here
However, it is a segmentation demo. You need to modify it a little.
I would like to implement offline voice recognition in my app. But I want it for two purposes:
For a small set of commands (play, stop, previous, next and a couple of others);
For a list of a few hundred bird names.
To implement (1), it seems to me a bad idea (slower and resource consuming) to use the full voice recognition force of android. In my mind, it would be easier to tell my app to only interpret a few words. That is, to use my own dictionary, telling my app to "use only these 10 words".
To implement (2) is similar to (1), but with a few hundred instead of 10.
Does this makes sense, and if so is there an easy way to implement it? Is it worth it?
Thanks!
L.
You can implement your app using CMUSphinx on Android. CMUSphinx tutorial is here:
http://cmusphinx.sourceforge.net/wiki/tutorial
The language models to recognize limited set of words are described here
http://cmusphinx.sourceforge.net/wiki/tutoriallm
You can use keyword spotting mode to recognize few commands.
Pocketsphinx on Android is described here:
http://cmusphinx.sourceforge.net/wiki/tutorialandroid
The demonstration includes the way to switch recognition modes from 10 words to few hundred words as you intend.
I use Dio dictionary, function gesture on screen get text to search
Library that in Android can make to be the function of this?
I think you want something like a handwriting recognition library. It seems you want to enable the users to write something on the screen ,when app is ON and then you can convert it to text and use it. There are many existing questions which might help you find a handwriting recognition library. See:
Handwriting recognition API's for android applications
https://stackoverflow.com/questions/768664/recommendations-for-handwriting-recognition-libraries-packages-in-java
You can also use Tesseract library to recognize handwriting. See:
Tesseract handwriting with dictionary training
I haven't used any so I am not sure which one is the best but I hope that these links help you.
i have used the code provided in this link for the speech recognition. in emulator it is saying recognizer not present,so i installed it on mobile. when i click on speak button it is working. but when i speak some names "rajesh" it is showing some possible verbs and all but not the name. but i want to use the input to select a contact from the address book in order to make a call . so please tell me how to carry on in this direction. one more thing, every time i need to develop the code in eclipse then install it on mobile and then check for output. is there any alternative to edit and check the app code in the mobile from eclipse.
please provide me any possible links. i want to develop a call app for blind,if the voice recognition does not work, what else could be done to take input from the user.
Names are hard for Speech recognition. There are more possible names in the world than words in any dictionary, so being able to recognise any arbitrary name is hard. Though common names are easier.
Anyway, if you want to recognise a customized list of words/names, You might want to look at Dragon Mobile from Nuance. Here is a copy-and-paste from another similar question I answered:
If you use 3rd party Android recognition from Nuance (The people behind DragonDictate), it supports a "grammar mode" where you can somewhat restrict the phrases that will be recognised during recognition.
Importantly, if you add unusual names into a Custom Vocabulary, they SHOULD become recognizable (Complex pronunciation issues aside).
You can find information if you dig through:
http://dragonmobile.nuancemobiledeveloper.com ,
looking for 'Custom Vocabularies'. Grammar mode is essentially a special mode of custom vocabularies.
At the time of writing, there was a document here that makes some mention of grammar mode:
http://dragonmobile.nuancemobiledeveloper.com/downloads/custom_vocabulary/Guide_to_Custom_Vocabularies_v1.5.pdf - It only really becomes clear when you try to progress in their provisioning web GUI.
You have to set up an account, and jump through other hoops, but there is a free tier. This is the only potential way I have found to constrain a recognition vocabulary.
Well, short of running up PocketSphinx, but that is still described as a 'Research' 'PreAlpha'.
No, I don't work for Nuance. Not sure anyone does. They may have all been eaten by zombies. You would guess as much reading their support forums. They never reply.