Please complete this task as part of your GSoC 2018 application.
This challenge is mandatory if you apply for T720, T724, and recommended for all others.
For FPGA-related tasks, please complete the [FPGA challenge](https://lab.apertus.org/T871) instead.
The goal is to build a small application which decodes a buffer with raw image data from the AXIOM Beta and converts it using the [LodePNG library](http://lodev.org/lodepng/) to create a valid PNG image.
# Create a simple C/C++ console application
# Add lodepng.cpp and lodepng.h files in order to use LodePNG (no static or dynamic build was provided by the developer yet)
# Read image data from a RAW12 file
# Save one of the Bayer channels (any of them) as a grayscale 16-bit PNG using the LodePNG library
# Sample raw data (4096x3072, 12bit): [portrait-gainx2-offset2047-20ms-02.raw12](http://files.apertus.org/AXIOM-Beta/snapshots/portraits/portrait-gainx2-offset2047-20ms-02.raw12)
# Bonus points if your application runs on the [Axiom BETA firmware in QEMU](https://github.com/apertus-open-source-cinema/axiom-beta-qemu).
**Collected information:**
- RAW12: https://wiki.apertus.org/index.php/RAW12
- 12bit conversion: https://stackoverflow.com/questions/33768206/convert-2-bytes-into-12-bit-number
- 12bit conversion (SIMD not required): https://stackoverflow.com/questions/15443868/fastest-way-to-convert-12bit-image-to-16bit-image