POV Display: Image to Code Generator

Image to Code Converter for Arduino POV Display

We have developed this tool to be used with our POV display project. This tool will convert your image into a data array, which can be used in the Arduino POV display code to display that image using the POV display.

Converting Images to Arduino Code

Typically, image arrays converted using conventional tools allocate at least one byte per pixel. For a standard 128x128 pixel image, this translates to 16,384 bytes or approximately 16.384 kilobytes of space. Such an approach, albeit straightforward, is inherently inefficient for systems where storage capacity or memory is limited. The larger the number of images or the higher their resolution, the more pronounced the storage problem becomes, potentially capping the number of images that can be stored or necessitating compromises in image quality or resolution.

To counter these limitations, we came up with a new method. This method reimagines the storage matrix by encoding the pixel data more compactly. Instead of the traditional byte per pixel, this method stores the data of 8 pixels in one byte, significantly reducing the image's footprint. Each byte now represents a row of 8 pixels in a binary format, where each bit stands for the pixel's colour (black or white). As a result, each row of the 128x128 image, rather than consuming 128 bytes, is compressed into 16 bytes. Consequently, the entire image occupies merely 2048 bytes (128 rows x 16 bytes), or 2.048 kilobytes, effectively reducing the storage size by a factor of eight.

How to use POV Display Calculator?

Image Preparation:

Resolution Adjustment: Ensure that each image you intend to convert is resized to a resolution of 128x128 pixels. This specific resolution is crucial for the conversion tool to process the images correctly, as it is coded for that particular resolution.
Color Format: Convert your images to a black-and-white format. It's important to note that the tool might not process images in grayscale accurately, so true black-and-white images are required.

Using the Converter Tool:

  • Click on on Choose files buttons and select and upload your images. You can select and upload multiple images simultaneously, depending on your needs.After selecting your images, click the 'Convert' button. The tool will then process the images and convert them into corresponding arrays. If you upload multiple images, the tool will generate an individual array for each image, typically named sequentially (e.g., Image_1, Image_2, Image_3, etc.). This organization helps in keeping track of the arrays corresponding to each image.
  • The tool also offers an option to invert the colours of the images. If you require inverted arrays, simply check the 'Invert Colors' checkbox before clicking on the convert button again.
  • You can copy the generated arrays directly from the tool. These arrays can then be integrated into your code, allowing you to utilize the converted images for your project.