Skip to content
AidLearning build a Linux system running on the Android with GUI, AI and Python support . Caffe, Tensorflow, mxnet, Keras,Pytorch are perfectly supported. Linux+Android+AI 3in1
Branch: master
Clone or download
Latest commit fcf8c25 Jun 13, 2019


License thank for qidiso provide the 中文说明

AidLearning FrameWork is a Linux system with GUI running on Android phone for AI programming without needing root. Aidlearning is also a Python programming framwork for mobile devices. In addition to some of the features available in the Linux environment, AidLearning has supported GUI and neural network environments. For example, Caffe, Tensorflow, Mxnet,Gluoncv, ncnn, Keras,Pytorch are perfectly supported..

AidLearning is a Linux system running on the Android with GUI, AI and Python support . The AidLearning project which have the Linux+Anroid+AI 3IN1 environments Developed and Maintained by several students from Cas University and Yale University.

Built with simplicity in mind, Aid Learning supports a list of Top Machine Learning Framework for Deep Learning. Now we support Caffe, Tensorflow, Mxnet, ncnn, Keras, Pytorch,Gluoncv, cv2,scipy.... powerfully.

Furthermore we provide an AI coding develop tool named Aid_code. It can provide you a visual AI programming IDE by using Python from zero on our framework! It means that when it is installed, your Android phone owned a Linux system with GUI which can write and run AI program in it as same as in PC.

Now you have a complete linux with GUI running on Android (Real linux running on the busybox and not virtul environment. So it is faster and almost real-time.) and can write your AI code on it visually using the Python!

New Release : AidLearning 0.70
What's new:

  • Full support for Python 3 and python 2, as well as pip3 and pip2 install

  • Caffe/MXNET/Gluoncv/Tensorflow/ Keras/Pytorch/Opencv4 for Python3 and Python2 are perfectly supported

  • With the new CVS package, you can easily customize your interface with Python code:

    cvs. setTitle ("Face Recognize")
    cvs. setInput_dict (usr_dict)
    cvs. setSubmitName ("Register your FaceID")
    cvs. setCamX (350,480)
    cvs. setInfoX (320,60)

  • Now You can use apt (apt-get) to install new packages to improve your Linux Environment...

  • Some BUGs have been solved, such as:
    Press the home key to return home and then enter the app: Instead of returning to the GUI, the problem is returning to the terminal.
    Reducing dependence on network traffic.

  • Adding new buttons for running Python 3 and python 2 online for Aid_code IDE

  • Add the AI Example Center, put some examples on the website, the new examples can be downloaded from the website in the future, in order to prevent the distribution of installation packages too large.

  • Modified accounts that do not activate the mailbox can be logged in directly, but there are prompts to activate the interface after login...


▣ Dependencies
▣ Installation
▣ Support AI framework
▣ GUI Customize
▣ SSH (connect to pc)
▣ Main Features
▣ Youtobe show
▣ Screenshot of AidLearning
▣ Examples Inside
▣ Aid_code IDE
▣ Contributors
▣ References


All you need is an Android devices (phone ,tablet or arm board) that supports the CPU of Arm64(aarch64). The Android version requires more than 6.0. If you think the parameters are not clear enough, I would like to say that most of the mainstream mobile phones support it, such as Samsung, Huawei, MI, OPPO, VIVO, etc.In addition, the requirement of storage space is a little big. It is suggested that there should be 4G free storage space.


To install AidLearing, Simply download an app (apk file) and install it on your mobile device. download at: (support python2.7, python3 not support) (support python2.7 and python3.5.1) (support python2.7 and python3.6.4)

The app (apk) is only 8M,when you install the apk ,the apk will download the depdence of the framework is 700M and 350M examples of AI codes using python. all is about 1G size to download .So it's recommended that you install it in a WiFi environment.

Support AI Framework

GUI Customize

Now you can easily customize your GUI with Python code!

cvs. setTitle ("Face Recognize")
cvs. setInput_dict (usr_dict)
cvs. setSubmitName ("Register your FaceID")
cvs. setCamX (350,480)
cvs. setInfoX (320,60)

As shown in the figure above, we divide an app into four areas: Title area, camera area, input area, info show area. An app display can consist of one or more areas.You can use Python (cvs class) statements to manipulate the Title, size and layout of these areas. for examples: in the info area ,you can do this:
cvs. setInfoX (320,60) # setting the width,height of the info area
cvs. infoshow ("this is info show") # show info in the info area

In particular, input area, we greatly simplify the operation process, you only need to specify a dict, AidLeaning will automatically generate a form for you to interact with users, such as you need to register a face, you can do this:

usr_dict={'username': '', 'type': 'add_person'}# define the input list

cvs.setInput_dict(usr_dict)# setting for gui

cvs.setSubmitName("Register your FaceID")#setting the name of submit button

so ,aidlearning will produce this gui:

>>> Tutorial & Guide

SSH (connect to PC)

PC can connect to mobile by using **ssh-keygen**. Generate a new key pair with ssh-keygen command in your PC. the command ssh-keygen produce the file of id_rsa and in the dir: ~/.ssh/

Just need you do: open the url:mobilephone'sip:8910/upload(for example: in the pc to upload ssh's file(id_rsa and

Main Features:

Graphical User Interface

We fixed Graphical User Interface for the Linux on Andorid(It has been pruned by andorid!), so you can use the GUI just like on the pc. For instance, You can use opencv to open and view camera!


Real linux running on the busybox and not virtul environment like VirtulBox. So it is faster and almost real-time

Easy to use

We provide a plenty of examples and by using our framework, you can run it with a tap, and then get a visual log to show the informations or errors.

Coding anywhere

You can coding on your phone anywhere, anytime. Every inch of fragmentation have been fully utilized. Your creativity can be instantly realized with a flash of inspiration.

# Energy Star

According to the test on the mainstream smartphone like Samsung, Aid Learning Framework only use 1% power consumption in a whole day (Standby)

Youtobe show

[Watch the video](

ScreenShot of AidLearning

Examples Inside:

Facencnn(mobiefacenet ncnn) 15fps in mobile phone

Face Landmark (106 keypoints ncnn) 15fps in mobile phone

handpose (tensorflow ) 5fps in mobile phone

body posenet for single person(converted from google ) 10fps in mobile phone

body posenet for multi-person(converted from google ) 7fps in mobile phone

Stylized picture(GAN ) 3fps in mobile phone .....

Aid_code IDE of python

We provide an AI coding develop tool named Aid_code. It can provide you a visual AI programming IDE by using Python from zero on our framework! Using the tool, you can run your python2 or python3 codes ,you can coding with Aid_code IDE on your phone anywhere, anytime.

Of course, you can use Aid_code on the web to edit your code online. For example, you can use web coding with Aid_code on PC. You just need to open the web address: IP of your mobile phone:8900/, when your PC and mobile phone are in the same LAN. You can open it on a PC, for example:

Http://, if your phone's IP is, you can check your phone's IP by commanding ifconfig (run ifconfig under terminal)


We are inviting anyone who wishes to contribute to the AidLearning project to reach to us. We primarily need contributions in translating the documentation of the project's code to major languages that includes but not limited to French, Spanish, Portuguese, Arabian and more. We want every developer and researcher around the world to benefit from this project irrespective of their native languages.

We give special thanks to qidiso for his incredible and excellent work in translating AidLearning's documentation to the Chinese language. Find below the contact details of those who have contributed immensely to the AidLearning project.


Medium-- Stories about AidLearning


You can’t perform that action at this time.