スキャナのCCDでギガピクセルカメラを作る話
EpsonのフラットベッドスキャナのリニアCCDをRaspberry Pi 5と組み合わせて、3.2ギガピクセルのラインスキャンカメラを作ったDIYプロジェクトの話。
フラットベッドスキャナの中身を見たことがあると思う。ガラス面の下に細長いセンサがひとつあって、ステッピングモーターでじわじわ動きながら原稿を一行ずつ読み取る。あの構造、実は大判カメラの原理に近い。
Yannick RichterのProject Gigapixelは、そのセンサをスキャナから取り出してカメラにした、というプロジェクトだ。先日のHackaday Europe 2026でも発表があって、改めて注目されている。
使っているのはEpsonのV300/V370/V200シリーズに内蔵されているILX561K。12ラインのCCDで、RGB×2×2の主副ライン構成になっている。中判6×7レンズの光軸上に配置してモーターで走査すれば、理論上は80,000×40,160画素——約3.2ギガピクセルの画像が撮れる計算だ。現プロトタイプでは21,700×10,000ピクセル(約2億画素)を達成している。
センサのデータインターフェースが面白い。8本のパラレルデータラインに6MHzのリファレンスクロック、両エッジでデータを送るので実効12MB/sになる。このインターフェースをRaspberry Pi 5のRP1チップが持つPIOブロックで受けている。RP1はRPi 5専用のペリフェラルチップで、そのプログラマブルI/O(PIO)とPIOLibを使うことで高速パラレル信号をソフトウェアから柔軟に扱える。キャプチャしたデータはNVMeストレージに書き出す。
センサのプロトコルはリバースエンジニアリングで解読した、とのことで、これだけで一年かかったらしい。データシートは当然存在しないから、オシロスコープで信号を観測しながら地道に解析する作業になる。その粘り強さは想像するだけで少し気が遠くなるな。
ラインスキャン方式そのものは産業用ラインスキャンカメラや地球観測衛星(プッシュブルーム方式)でよく使われる技術だ。2Dセンサの代わりに1Dセンサを使い、機械的な走査で2次元画像を組み立てる。被写体が静止している必要はあるけど、センサの物理サイズに縛られず、走査回数を増やすほど解像度が上がる。大判フィルムカメラにも「スキャンバック」という同じ発想の周辺機器があったし、原理自体は古い。
気になるのはキャリブレーションだ。12ラインそれぞれの感度むら、モーターの走査速度のむら、レンズの周辺収差——これらをまともに補正しないと、高解像度で撮ってもそれが全部収差として現れる。発表資料でどこまで触れているかは確認できていないけど、この部分に本当の難しさが集まっている気がする。
それが個人プロジェクトとして一年で動く形になった、という事実は単純にすごいと思う。センサのリバースエンジニアリングからプロトコル実装、画像処理まで全部ひとりでやっているわけで、この種の「どうせ無理」を地道につぶしていく姿勢は見ていて面白い。
— ランキン
出典
一次情報:
- Project Gigapixel - Linear CCD camera | Hackaday.io — 著者プロジェクトページ(仕様・数値は著者報告値)
第三者報道:
- Hackaday Europe 2026: Project Gigapixel | Hackaday (2026-07-20)
- Photographer Builds 3,200MP Camera Using CCD Scanner Sensor | PetaPixel (2025-11-06)
- Project Gigapixel | Hackster.io
スペック・数値はプロジェクトページおよび各報道の報告値で、独立検証はこれから。
コメント
まだコメントはないよ。最初のひとことをどうぞ。