diff --git "a/docs/02_ENV/ENV_01_\346\212\200\350\241\223\343\202\271\343\202\277\343\203\203\343\202\257.md" "b/docs/02_ENV/ENV_01_\346\212\200\350\241\223\343\202\271\343\202\277\343\203\203\343\202\257.md" index ba0d274..36c8797 100644 --- "a/docs/02_ENV/ENV_01_\346\212\200\350\241\223\343\202\271\343\202\277\343\203\203\343\202\257.md" +++ "b/docs/02_ENV/ENV_01_\346\212\200\350\241\223\343\202\271\343\202\277\343\203\203\343\202\257.md" @@ -2,7 +2,7 @@ ## 言語 (Language) -- **Python 3.12+** +- **Python 3.11+**(`pyproject.toml` の `requires-python = ">=3.11"`) ## 主要ライブラリ (Core Libraries) @@ -11,9 +11,12 @@ | NumPy | 数値計算・配列操作 | 画像データの行列演算の基盤 | | OpenCV (`opencv-python`) | 画像の読み込み・前処理 | PNG 読み込み,ROI 抽出,色空間変換に対応 | | rawpy (`rawpy>=0.21.0`) | DNG (RAW_SENSOR) 読み込み | SmTIAS 定量モードの 10bit Bayer DNG をデモザイク・linear 展開(libraw ベース) | -| colour-science | CIE L\*a\*b\* 変換,ΔE 計算 | CIE 規格準拠の色彩計算を正確に実装済み | +| SciPy | 位置合わせ(位相相関)・フィルタ | 再現性評価の位置合わせで FFT 相互相関・`scipy.ndimage` を使用 | +| scikit-image | SSIM 再現性評価 | `skimage.metrics.structural_similarity` で画像間 SSIM を算出 | | Matplotlib | グラフ・図の生成 | 論文掲載用の高品質な図を出力可能 | -| pandas | 数値結果の集計・CSV 出力 | 比較表の作成・データ管理に便利 | +| pandas | 数値結果の集計・表示 | ビューアでの集計表・データ管理に便利 | +| Pillow (`PIL`) | 図中の ROI オーバーレイ描画 | ビューアで矩形 ROI を画像へ重ね描き | +| Streamlit | 結果ビューア(GUI) | `scripts/viewer.py` の対話的な結果閲覧 UI | ## 開発ツール (Development Tools) @@ -29,7 +32,16 @@ - **実行方法**: CLI スクリプト(`python` コマンドで実行) - **Jupyter Notebook**: 必要に応じて探索的解析に使用(メインの解析パイプラインはスクリプトで実装) +## 将来導入予定 (Planned) + +以下は requirements に含めているが,**現状のコードでは未使用**(将来機能用の予約). + +| ライブラリ | 予定用途 | +| --- | --- | +| colour-science | CIE L\*a\*b\* 変換・ΔE2000 色差評価(CIE 規格準拠) | +| Jinja2 | 評価レポート(HTML 等)のテンプレート生成 | + ## 選定の補足 (Notes) -- **colour-science vs skimage**: `colour-science` は CIE 規格(ΔE2000 等)に厳密に準拠しており,学術論文での色差評価に適している.`skimage.color` でも基本的な Lab 変換は可能だが,ΔE 計算の選択肢が限られる +- **SSIM は scikit-image**: 再現性評価の SSIM は `skimage.metrics.structural_similarity` を使用.将来の色差(ΔE)評価には CIE 規格準拠の `colour-science` を予定(上記「将来導入予定」). - **Ruff**: Flake8 + Black + isort を 1 つのツールに統合しており,設定が簡潔 diff --git "a/docs/02_ENV/ENV_02_\347\222\260\345\242\203\346\247\213\347\257\211\346\211\213\351\240\206.md" "b/docs/02_ENV/ENV_02_\347\222\260\345\242\203\346\247\213\347\257\211\346\211\213\351\240\206.md" index 027508b..96a4b6c 100644 --- "a/docs/02_ENV/ENV_02_\347\222\260\345\242\203\346\247\213\347\257\211\346\211\213\351\240\206.md" +++ "b/docs/02_ENV/ENV_02_\347\222\260\345\242\203\346\247\213\347\257\211\346\211\213\351\240\206.md" @@ -43,7 +43,7 @@ ### 動作確認 (Verify Installation) ```bash -python -c "import cv2, colour, numpy, pandas, matplotlib; print('OK')" +python -c "import cv2, numpy, scipy, pandas, matplotlib, streamlit, skimage, PIL, rawpy; print('OK')" ``` `OK` と表示されれば成功. diff --git a/pyproject.toml b/pyproject.toml index 11cf39d..25fdc80 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,8 +4,18 @@ description = "SmTIAS 画質検証プロジェクト" requires-python = ">=3.11" dependencies = [ - "jinja2", + "numpy", + "opencv-python", + "scipy", + "matplotlib", + "pandas", + "streamlit", + "scikit-image", + "Pillow", "rawpy>=0.21.0", + # 将来機能用(現状コードでは未使用) + "colour-science", + "jinja2", ] [tool.pytest.ini_options] diff --git a/requirements.txt b/requirements.txt index 8dd4fe5..d408932 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,10 +1,13 @@ numpy opencv-python -colour-science scipy matplotlib pandas streamlit -jinja2 scikit-image +Pillow rawpy>=0.21.0 + +# 将来機能用(現状コードでは未使用) +colour-science +jinja2