Frames on the Tangle
The Internet of Things revolution will benefit from a wide range of sensors that goes beyond our limited senses, but certainly cameras won't be left behind. Smart Cities will be filled with visual data and our algorithms will keep seeing better.
Distributed Ledger Technologies (DLT's) will play a major role there, but it's known that these technologies are not well suited for storing or transferring large files, such as high-definition images and videos. Applications in this context usually handle the payload in upper layers or implement a hybrid solution, like IPFS.
But where do we draw the line?
How small can a picture get so it can efficiently flow through a distributed network, and still be useful for us and our machines to extract valuable information from?
This Proof-of-Concept has two main goals:
- explore the idea of transferring frames directly in IOTA's core protocol, the Tangle.
- come up with a simple mobile app for (enthusiastic) users to interact with the Tangle and easily visualize how data gets in and out.
IOTA is a open-source distributed ledger designed from the ground up for the Internet of Things. Learn more at https://www.iota.org.
Frames on the Tangle — is an Android app that converts pictures taken with the device’s camera into transactions and attaches them to the Tangle, generating a unique bundle hash that can be used to access them.
Let’s start small. An image with size 100x100 pixels is encoded to Base64, converted to trytes and then splitted in chuncks to fit the maximum size a single transaction can store in its signatureMessageFragment field. The resulting transactions are then packed in a bundle.
Pictures can also be grouped into albums - a simple transaction referencing a list of hashes. With a shared album hash, Frogle can load a bunch of images at once.
There's no third-party server: all communication happen between the app and a public IOTA node (IRI). You may also configure your custom nodes.
What to do with a thumbnail?
Below we can see examples with details of some frames captured with Frogle. Submitting them to Google Cloud Vision (an image recognition API with pre-trained models) gives us the suggestions shown on the right.
This simple test shows how just a few transactions carrying small frames could provide insights for machines and at least for some IoT applications.
You can find Frogle on Google Play.
This initial version does not deal with privacy or ownership (no MAM), wich means that every picture will be public and accessible for anyone to reconstruct it. It’s important to note that no other data from the device is used besides the raw pixels from the camera. No seeds or signups are required.
Any feedback is welcome. To support this project just get in touch or send some iotas to: