BitPack Tools Posted 18 hours ago Report Posted 18 hours ago (edited) Hi everyone, I just released a small LabVIEW tool that allows you to embed custom data into PNG files and extract it back. The image remains fully viewable while carrying hidden data. Optionally, the data can also be exported in XML format. Included VIs: Encode VI – Appends data to a PNG file or exports to XML. Decode VI – Retrieves the embedded data from a PNG file, including XML if used. Key Features: Preserve image appearance while storing hidden data. Optional XML export for structured data. Combine images and related data in a single portable file. Store hidden notes or annotations without affecting the image. Possible Use Cases: Data + Image packaging for measurement results. Metadata storage (experiment details, settings, version info). Lightweight data transport. Scientific experiments or field work with images + sensor readings. Archiving visual and numerical data together. Secure sharing of proprietary information. Dependencies: The tool uses two VIs from the MGI Library (BSD 3-Clause License). For simplicity, these VIs are included directly in the repo. You can check it out and download it here: https://github.com/BitPackTools/pixpack Feedback and suggestions are welcome! Edited 18 hours ago by BitPack Tools Quote
ShaunR Posted 16 hours ago Report Posted 16 hours ago It doesn't seem to produce a valid png (either as XML or "not encoded"). I've changed the extension name of the produced file (.notaping) because the web interface will not allow uploading as a png. PicPack_Embedded.notapng Quote
BitPack Tools Posted 1 hour ago Author Report Posted 1 hour ago Hi ShaunR, Thanks a lot for checking it out and giving feedback! You were actually right — the issue came from LabVIEW’s “prepend array or string size” option in the Binary Write VI, which adds the array length (U32) at the start. That’s why the file didn’t start with a proper PNG signature. I’ve fixed it, and now the decode VI also returns the image separately, so it should work nicely even in LabVIEW. Really appreciate you taking the time to try it! Just a note: this isn’t a strictly valid PNG, since the extra data isn’t stored in chunks but appended after IEND. Still, image processing tools usually don’t mind, as they only read up to IEND. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.