Find a very good material for learning Android compiled by Great God on GitHub and share it with everyone.
Knowledge points in this article
The overall structure of ID card recognition
- Effect demonstration
- Application scenarios of ID card recognition
- Project core structure
Key technology of ID card recognition
- Principles of NDK development
- What is JNI
- OpenCV architecture system
- OCR technology architecture
ID card recognition project combat
- Key architecture
- Core steps and handwritten implementation
- IOS windows running synchronously
- Android architecture
1. What is ID card recognition
Key problem analysis: find the area where the number is located → get the number picture → identify the ID number
2. Core
OpenCV:
The full name of OpenCV is Open Source Computer Vision Library, which is a cross-platform computer vision library. IBM began research and development in 1999, using C++ to provide interface Mat data structure
Application areas:
Image processing. Face recognition. Gesture recognition. Human-computer interaction action recognition. Motion tracking. Object recognition image segmentation
Tess-two:
The full name of OCR is Optical Character Recognition is a process of analyzing and recognizing image files of text data to obtain text and layout information.
tess-two is a git branch of TesseraToolsForAndroid
Use characteristics:
1: Simple and easy to use
2: Open source and support offline use
3: Java api customized for the Android platform
NDK development::
3. Detailed architecture
problem:
1: What is a grayscale image
2: What is binarization and why?
3: What is contour detection
4: What is image expansion
5: Will image segmentation cause OOM?
6: How to perform OCR text training
7: What is the API for graphic recognition?
3.1 The core steps of image recognition-grayscale
3.2 The core steps of image recognition-binarization
3.3 The core steps of image recognition-contour detection
All continuous closures are framed by rectangles
3.4 The core steps of image recognition-expansion
3.5 The core steps of image recognition-contour screening
3.6 text recognition
OCR text sample → memorized text → straight text recognition
to sum up
How to upload pictures?
It can’t be said that I will call how the interface is implemented, although I also do it
To understand:
1: Understand what Http is, and know how http uploads pictures.
2: Using okhttp, how does retrofit realize this process?
End of sentence
The junior engineer will start to do it directly when he gets the requirements, and then do it and find that there is a problem, either the technology cannot be realized, or there is a logic problem.
However, senior engineers will consider a lot when they get the requirements, the feasibility of the technology? Does it help existing businesses? The impact on the existing technology architecture? How scalable is it? Wait...then the design coding stage will be carried out later.
And now with the popularity of cross-platform development, hybrid development, and front-end development, the technologies that Android developers need to learn and master are also increasing.
Through exchanges and discussions with friends in some industries, and refer to the current interview requirements of major factories. We spent almost a month sorting out all the knowledge systems that this Android senior engineer needs to master. You can see how much you have mastered.
Hybrid development, WeChat applet. Must be learned and proficient
These are the cores of Android related technologies, as well as advanced Java
Some techniques necessary for advanced advanced. Like the actual combat of mobile development architecture projects, etc.
Android cutting-edge technology; including componentization, hot upgrade and hot repair, and detailed technical systems of various architectures and frameworks
The above is the technical system we have compiled for Android senior engineers to master. Many friends may think that many technologies can be achieved by themselves, but some new technologies are not clear. There should be no big problem.
And this is precisely the problem! Why other senior engineers can exceed 300,000 years, but you only have a few hundred thousand?
Just because you only need to add what you think you need, but you don't know what the company needs. This is particularly easy to cause gaps. Because your technical system is not systematic, it is fragmented and scattered. So why do you exceed 300,000 annual salary?
These words of mine are relatively straightforward and may poke some people's glass hearts, but I know it will definitely have a wake-up effect for some people. As long as someone finds a direction based on my advanced system outline and these words, and takes action to improve themselves, they will work harder to succeed. Then what I did all made sense.
If you like it, please help forward and like it so that more people in need can see it. Thank you!
I have all the technical information contained in the above system outline. You can share it with friends in need for free!
. As long as someone finds a direction based on my advanced system outline and these words, and takes action to improve themselves, they will work harder to succeed. Then what I did all made sense.
If you like it, please help forward and like it so that more people in need can see it. Thank you!
I have all the technical information contained in the above system outline. You can share it with friends in need for free!