Project Abstract

NeoObscura is a fully functional camera sensor with on-device image compression built from scratch using an array of 1,200 phototransistors. The MCU reads data from the sensor array, one phototransistor at a time. Once a full image is read, it is sent to the FPGA over SPI to be compressed. The compressed image is sent back to the MCU which will sends over UART to a laptop which interprets and displays the image.

Project Motivation

Nearly everyone carries around a smartphone capable of taking high resolution photos and videos, but few people truly understand how a digital camera works. In this project, we aim to learn about the entire process of generating an image, from photon to disk. We want to design and build each part of the camera from scratch: the lens and body, sensor, image processor, and compressor. By creating a simple, modular camera system we hope everyone can get a better understanding of how they work.

System Block Diagram

Schematic of system 2

Table of Contents

MCU Design

Explanation of everything the MCU does: reading data from the sensor, image processing, interfacing with the FPGA QOI compression accelerator, sending data to the laptop.

FPGA Design

Explanation of QOI Hardware accelerator implementation.

Results

Summary of the core results of our project.

Documentation

Useful pieces of documentation including: schematics, the BOM, references, and sources of inspiration.

Team

Who we are

Media

Images and videos showing our project in action