What you call is a typical OCR application. There are two things to consider :
1- Localizing the text
2- Recognizing the text
Please note that it is not an easy task to solve the problem globally. However, depending on your working subset, you need to get the data first. There are a lot of open source ocr database that you can find.
Then, you need to add some preprocessing and it depends on which kind of path you want to choose. You can find lots of articles about it.
Then, you need to add a localization network (like Faster R-CNN or any specialized one for OCR), with the combination of recognition network.
This was deep learning approach. It has a learning curve if you have never worked with deep learning frameworks.
Another way that you can take is to get different character image dataset. Resize all of them to same size, flatten to 1-D and train a classifier. Then, you can start to distinguish different image patches if they are character or not (or which character). Then, for inference, you need to crop different sub-regions from input image and feed it to classifier to get a result.
It is more costly in terms of inference time and the success rate will more likely to be much lower than deep learning method but you can learn & implement this one much quicker.