# Hardware and Software for acquisition of images
This project consists in hardware and software for capturing images through a camera and a simple board and transfering these photos to a board with higher computational power for further operations. It is an initial step for a more advanced project of object recognition for application in projects such as robots or other devices.
In this scenario, the project aims in developing the following knowledge/skills:
- Programming into boards with microcontroller
- Dealing with images in ESP32 and Raspberry Pi
- Board to board connection using wireless communication
#### Link to GitHub repository
[https://github.com/fabioschuh/image_capture](https://github.com/fabioschuh/image_capture)
#### Link to Final presentation - Open Hardware Academy template
[Final presentation](https://hackmd.io/@1ofnlq-eRfSNUs89Wv47FA/H1AMp2KS6)
## Detailing
A simple board with microcontroller with a camera captures images. The ESP32-WROVER Board is used for this function.
<!-- your comment -->
<!--  -->

The ESP32 board is connected to a more powerful board, the Raspberry Pi, that receives these images, process and store them.

The Raspberry Pi has a user interface display where an interface allows for controlling the ESP32 for image shooting, then displaying images captured.

In the future the Raspberry Pi will perform object recognition tasks that can be integrated to functions of robots such as a robot car that navigates through a maze or a robotic arm that can identify location and position of specific objects in the real world.
## List of components
- [ESP32 with camera module](https://www.amazon.nl/-/en/dp/B09BC5CNHM?ref=ppx_yo2ov_dt_b_product_details&th=1)
- [Raspberry Pi](https://elektronicavoorjou.nl/product/raspberry-pi-4b-8gb-starter-kit-met-heatsink-case-fan/)
- Power supply
- Cooling for Raspberry Pi
- [Display for Raspberry Pi](https://elektronicavoorjou.nl/product/3-5-inch-480x320-tft-display-met-touch-screen/)
- [Case for Raspberry Pi + display](https://elektronicavoorjou.nl/product/raspberry-pi-4b-behuizing-voor-3-5-inch-touch-screen/)
## Benchmark documentation projects
[THOR: robotic arm -> HACKADAY.IO](https://hackaday.io/project/12989-thor)
[MOTUS - Open-Source 3D Printed Robotic Arm -> instructables.com](https://www.instructables.com/MOTUS-Open-Source-3D-Printed-Robotic-Arm/)
[Zortrax Robotic Arm -> instructables.com](https://www.instructables.com/Zortrax-Robotic-Arm/)
[Inexpensive SCARA arm (2D) w/ 28BYJ-48 steppers](https://www.thingiverse.com/thing:948061/files)
[DIY Robotic Arm Using 28byj-48 Stepper Motors and Arduino-Upcycled Material-Affordable](https://www.instructables.com/DIY-Robotic-Arm-Using-28byj-48-Stepper-Motors-and-/)
[Extremely Simple Robotic Arm | 28BYJ-48](https://www.thingiverse.com/thing:2214090/files)
[Robotic arm with 28BYJ-48 -> Github](https://github.com/alexkirsten/robotic_arm/tree/main)
[Collection of robotic arms](https://github.com/hobofan/collected-robotic-arms#robotic-arm-with-6-dof-by-ancastrog)
## Useful links - Similar/Related Projects
#### Raspberry Pi to ESP32 communication
[How to Connect an ESP32 WiFi Microcontroller to a Raspberry Pi Using IoT MQTT](https://predictabledesigns.com/how-to-connect-esp32-microcontroller-to-raspberry-pi-using-iot-mqtt/)
#### Object recognition
[Object Detection on Raspberry Pi - instructables.com](https://www.instructables.com/Object-Detection-on-Raspberry-Pi/)
[How to Perform Object Detection with TensorFlow Lite on Raspberry Pi](https://www.digikey.com/en/maker/projects/how-to-perform-object-detection-with-tensorflow-lite-on-raspberry-pi/b929e1519c7c43d5b2c6f89984883588)
[Getting started with image classification on Raspberry Pi - microsoft.github.io](https://microsoft.github.io/ELL/tutorials/Getting-started-with-image-classification-on-the-Raspberry-Pi/)
[Object and Animal Recognition With Raspberry Pi and OpenCV](https://core-electronics.com.au/guides/object-identify-raspberry-pi/)
[Image Recognition With TensorFlow on Raspberry Pi - instructables.com](https://www.instructables.com/Image-Recognition-With-TensorFlow-on-Raspberry-Pi/)
#### Link to the homework assignment with draft info
[Homework assignments OHA 2023 - Fabio](https://hackmd.io/-Yuc_kYkQAuplbK-iKOUHw)
## Project objectives - list of documents
- Project introduction, description and future steps
- Schematics illustrating boards and communication between them
- Assembly instructions
- Software for ESP32
- Software for Raspberry Pi
- Bill of Materials and links
## Value Proposition
### Moore’s original 6-step value proposition
**For** people looking for acquiring knowledge in hardware for capturing image, transfering, and processing it.
**Who** is working to develop knowledge and skills in hardware development and programming
**The** image capture project
**That** is a step in implementing the object recognition technology
**Unlike** solution that are ready for application and user friendly
**Our product** provides the opportunity to learn how to build and program such a system
### The Value Proposition Canvas

### Value proposition based on the Canvas
#### Jobs
- Perform steps into image recognition
- Develop skills in mechatronics:
- mechanic design
- electronics
- programming
- AI
#### Pains
- Complexity and difficulties in development
- Time availability
#### Gains
- Sucessfully implement steps into object recognition tasks
- Skill development
#### Product features and specs (Products and services)
- Create basic knowledge in simpler tasks related to object recognition
#### Pain relievers
- Reduction of complexity by dividing the object recognition task in simpler steps
#### Gain creators
- Development of hardware skills
- Development of programming skills
- Step into object recognition technology
### Target specs and feature priority
|Priority| Features/ target specs|
|--------|-------|
|Must have|1. capability for image capturing and 2. communication to a powerful board|
|Should have|a display to verify and reproduce images captured |
|Could have| a nice external casing |
|Won't have| implementation of object recognition|