Inspiration
Machine data is hands-down the most abundant source of data on earth. It can also be hard to access this data and made available for use in protecting resources like people, organizational assets, and government utilities. Normalizing, converting and using this data coming from the edges can help save lives, minimize threats, and recover from critical events quicker and confidently. The combination of IoT, Edge AI, cameras, blockchain and applications can facilitate the best use of this machine data.
Secondly, edge devices that are dedicated or with spare capacity are all round us that can be powered by blockchain technology for rewards and reduction of carbon footprint. With federated learning, data can be collected from these devices to develop models that can be used at the edge for better performance.
Anyone with a laptop, mobile or any connected device can earn reward tokens by providing data, spare computational and storage capacity to the blockchain network.
I wanted to use camera technologies for helping people to learn and by combining camera technologies with computer vision help keep people and assets safe and informed during emergencies and other critical events.
What it does
The setup of EdgeOptics consists of a camera connected to an edge device running a custom computer vision model to detect fire when it occurs, send alerts and detections to the stakeholders for immediate action once the alert is received via an application, sms, email, phone call or video conferencing.
How we built it
For this project, I have used a number of tools, platforms, apis, libraries and datasets. Here's a high level overview of what I worked with during the project development
Constellation Metagraph - It is an independent blockchain networks with nodes and specific applications for data and currency. It can be connected to an hypergraph. The metagraph example was used as the base for building the project. So, alerts generated from the edge device and camera are stored on the metagraph and retrieved for visualization on a web application.
Stardust collective dag library: For creating private keys, and accounts or addresses needed for storing data on the metagraph.
Roboflow - I downloaded the a fire dataset using the roboflow package in a notebook. The data was used to train the custom model used.
YOLOv10 - This is the custom fire detection model for training the YOLOv10 model on the Roboflow data. YOLOv10 is a family of object detection architectures and models pretrained on the COCO dataset.
React - This is used to render the alert data stored on the metagraph on a dashboard.
Flask Python server - It is directly connected to the edge device and camera for serving inference and posting data to a Node JS server using the stardust collective/stargate dag4 library.
NodeJS server - It implements the functions in the dag library for storing data on a metagraph and also receives source data from the flask server.
Storage: I used both AWS S3 and IPFS via Pinata for storing images from the camera.
Accomplishments that we're proud of
Working on the constellation tools including the metagraph set me up to work on more computer vision projects and camera apps that utilizes the blockchain technology..
What we learned
It helped improved my understanding of the architecture and will take me a step further in developing services on the platform. It gave me a better insights into the use of scala language, and a better understanding of blockchain technology.
What's next for EdgeOptics
EdgeOptics will be adding more features including dialogflow chatbots and rag llm app for managing users, camera devices on the metagraph and exploring the knowledge base of data from camera applications built on the network. Integration of the wallet and rewards for providing data, computational and storage capacity will be part of these applications going forward.
Log in or sign up for Devpost to join the conversation.