BeagleBoard/GSoC/2021 Proposal/TensorFlow Lite Compatability

From eLinux.org
< BeagleBoard‎ | GSoC
Revision as of 15:52, 11 April 2021 by Lpillsbury (talk | contribs)
Jump to: navigation, search


ProposalTemplate

About Student: Leah Pillsbury
Mentors: Jason Kridner
Code: https://github.com/deebot/Beaglebone-BidirectionBus
Wiki: http://elinux.org/BeagleBoard/GSoC/ProposalTemplate
GSoC: GSoC entry

Status

This project is currently just a proposal.

Proposal

Please complete the requirements listed on the ideas page and fill out this template.

About you

IRC: lpillsbury
Github: lpillsbury
School: Pasadena City College and Boston University before that
Country: United States
Primary language : English
Other languages : Spanish, Swahili, Hebrew, some Hindi/Urdu, Telugu, Bengali
Typical work hours : 9AM-5:30PM US Pacific, though I may be on Eastern time part of the summer
Previous GSoC participation: I've never participated in GSOC; I am interested to do so to learn more about embedded software, improve my coding skills, and participate in the community. I use open source tools all the time, and it is really exciting to make something useful that other people would use too.

About your project

Project name: TensorFlow Lite Compatability with BeagleBone AI

Description

In 10-20 sentences, what are you making, for whom, why and with what technologies (programming languages, etc.)? (We are looking for open source SOFTWARE submissions.) While the specs of BeagleBone AI are awesome, it seems limiting for an AI board for the general public to not be able to access TensorFlow Lite. I would like to change that by choosing a current release of TensorFlow, and writing the code necessary to run it on the Arm M4 processors that the BeagleBone AI board has, and that should work with TensorFlow Lite. This project will be a combination of C coding, dealing with the Linux kernel, and doing some example cases with TensorFlow Lite in python.

Ideally, I'd spend the first few weeks getting TensorFlow Lite working on a BBAI, document my hacking process, and then create a smooth stable way to make it work more out of the box. Then I'd spend the rest of the time doing examples that would be highlighted both on the BeagleBoard website, and on the TensorFlow Lite Examples page by making a pull request. Given that there are already examples of using TensorFlow Lite on Raspberry Pi, with picamera, the starting point would be to have equivalent BeagleBone examples, most likely doing image capture through OpenCV (OpenCV with BeagleBone Black)

Timeline

Provide a development timeline with a milestone each of the 11 weeks and any pre-work. (A realistic timeline is critical to our selection process.)

Apr 8 Found out about exciting projects at Beagle Board, joined the community!
Apr 13 Proposal complete, Submitted to https://summerofcode.withgoogle.com
May 17 Proposal accepted or rejected
Jun 07 Pre-work complete, Coding officially begins!
Jun 17 Milestone #1, Introductory YouTube video
June 24 Milestone #2
June 30 Milestone #3
July 12 18:00 UTC Milestone #4, Mentors and students can begin submitting Phase 1 evaluations
July 16 18:00 UTC Phase 1 Evaluation deadline
July 23 Milestone #5
July 30 Milestone #6
Aug 06 Milestone #7
August 10 Milestone #8, Completion YouTube video
August 16 - 26 18:00 UTC Final week: Students submit their final work product and their final mentor evaluation
August 23 - 30 18:00 UTC Mentors submit final student evaluations

Experience and approach

In 5-15 sentences, convince us you will be able to successfully complete your project in the timeline you have described.

Contingency

What will you do if you get stuck on your project and your mentor isn’t around?

Benefit

If successfully completed, what will its impact be on the BeagleBoard.org community? Include quotes from BeagleBoard.org community members who can be found on http://beagleboard.org/discuss and http://bbb.io/gsocchat.

Misc

Please complete the requirements listed on the ideas page. Provide link to pull request.

Suggestions

Is there anything else we should have asked you?