# 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 --> <!-- ![](https://m.media-amazon.com/images/I/71AB2e-EhUL._AC_SX522_.jpg) --> ![](https://thumbs2.imgbox.com/67/ea/KditLKWZ_t.jpg) The ESP32 board is connected to a more powerful board, the Raspberry Pi, that receives these images, process and store them. ![](https://predictabledesigns.com/wp-content/uploads/2022/02/a-close-up-of-a-circuit-board-description-automat.jpeg) The Raspberry Pi has a user interface display where an interface allows for controlling the ESP32 for image shooting, then displaying images captured. ![](https://thumbs2.imgbox.com/f1/02/Auattpev_t.jpg) 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 ![](https://thumbs2.imgbox.com/3d/e7/pS1daKWE_t.png) ### 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|