概要
- CDImage は、CD表面に画像を「焼く」ツール
- 過去のプロジェクト (argon, unDEFER)に影響を受けて開発
- Qt6 対応GUIとWindowsバイナリを提供
- ディスクごとの幾何学的違い でキャリブレーションが難航
- 人手・AI活用のキャリブレーション改善案 も提案
CDImage:CD表面に画像を焼くツールの概要
- CDImage は、CD表面に 視覚的な画像 を焼き付けるツール
- Instructablesユーザーargon や unDEFER による過去の試みから着想
- 座標変換コード はunDEFERの実装を基に改良
- 画像の 階調やCDの種類 に応じた調整機能を搭載
- GUIプレビュー やユーザーフレンドリーな操作性を重視
- 2008年にキャリブレーション問題で一度開発中止
- 最近コードを Qt6 に移植し、バグ修正とともに公開
- C++ での実装理由は オーディオトラック生成処理の高速化
ビルド方法とWindows対応
- Qt 6ライブラリ がビルドに必要
- qmake と make コマンドでビルド可能
- Qt Creator 利用によるビルドも推奨
- Windowsユーザー向け にバイナリも配布
- CDレコーダー未所持 のため、Windows上での動作検証は限定的
- 今後Windowsでの焼き方手順 も公開予定
使用上の注意点
- トラック生成ダイアログ にCDモデルがない場合は失敗リスク大
- CDごとに 幾何学的パラメータ が異なるため、画像計算に大きく影響
- 未登録ディスクの場合は 手動入力 が必要だが、調整は困難
- 同一モデルでも個体差 が存在し、試行錯誤が必要
- CD-RWの再利用 や完全に同じディスクの利用が推奨
- メーカー側はこの用途を想定していない ため、品質にばらつき
操作方法
- メニューの Edit→Load image で画像ファイルを選択
- 高コントラスト画像 推奨、カラー画像は自動でグレースケール化
- 画像調整操作
- 左クリック で移動
- ダブルクリック で中央配置
- マウスホイール でズーム
- Edit→Create track でCDモデルを選択
- 未登録ディスクは 手動で幾何学パラメータ入力 が必要
- モデルが判明している場合は 連絡すれば追加対応 も可能
- 変換処理は ハードウェア性能 により所要時間が変動
- 生成されるトラックは約800MB のAudio CD形式
- 任意のライティングソフト(例: cdrecord)で Audio CDとして書き込み
キャリブレーションの考察
- 数学的には多目的最適化問題 (特に二目的最適化)
- 「綺麗な画像」を得るには 専門家のフィードバック が不可欠
- 各パラメータを均等に変化させて多数のディスクを焼く 反復手法
- 画像内でパラメータを段階的に変化 させ、特徴的な部分を見つける手法
- CD PAINTプロジェクト のdefcdparamsツールによる幾何学測定事例
- 人手による評価がボトルネック で、プロジェクト中止の要因
- キャリブレーションの自動化案
- ディスクごとに幾何学が異なるため、シークタイム遅延も異なる
- 理想的な遅延値 を使えば理論上は自動化可能
- ただし ドライブ依存性 やハードウェア要因が課題
- AIや画像認識技術 の進歩で自動化の可能性拡大
- 他のアイデアや提案も歓迎
参考文献・関連情報
- 「Red Book」 (CD-ROM ECMA標準)
- Hackaday の本プロジェクト紹介記事
- 光学ドライブのリバースエンジニアリング 関連プロジェクト
- CD PAINT やdefcdparamsツールの存在
- ハードウェアアプローチ のヒントになる外部プロジェクト紹介