Day 14 - 12/14

Dice Art Generator - サイコロモザイクアート生成ツール

StreamlitPython
Claude Code
Dice Art Generator - サイコロモザイクアート生成ツール

概要

概要


画像をサイコロの目(1〜6)だけで表現したモザイクアートに変換するWebアプリケーションです。

主な機能


  • 画像アップロード: JPG/PNG画像をドラッグ&ドロップで簡単アップロード

  • サンプル画像: 8種類のテスト用サンプル画像を内蔵

  • パラメータ調整: サイコロ数、コントラスト、明暗反転をリアルタイム調整

  • プレビュー表示: サイコロのドットを実際に描画した完成イメージを表示

  • 設計図出力: CSV/Excel形式でダウンロード可能

  • 購入リスト: 各目(1〜6)の必要個数を自動計算


デザイン


AppleのLiquid Glass UIを参考にした、透明感のあるモダンなデザインを採用。グラスモーフィズム効果、フローティングアニメーション、ホバーエフェクトで洗練されたUXを実現しています。

リンク

制作時間

2時間

学んだこと・振り返り

学んだこと


Streamlitの制約


  • `st.markdown`内のHTMLは自己完結する必要がある

  • 開始タグと終了タグを別々の`st.markdown`に分けることはできない

  • Streamlit内部要素は`[data-testid="stImage"]`などで直接CSSターゲティング可能


画像→サイコロ変換ロジック


```python
dice_value = floor((255 - pixel_value) / 256 * 6) + 1
```
このシンプルな式で、暗い部分→6(黒ドット多い)、明るい部分→1(白ドット少ない)のマッピングが実現できる。

Liquid Glass UIの実装


  • `backdrop-filter: blur()`で背景ぼかし

  • `rgba(255,255,255,0.15)`で半透明の白

  • `inset box-shadow`でガラスの光沢感

  • `cubic-bezier`で流動的なアニメーション

初回プロンプト(計画)

この動画を見て、サイコロでアートを描くことができることを知りました。 絵やアートワーク、写真からダイスアートワークの制作原本(どの場所にどのサイコロの目を置けば完成するかがわかる図)を作ることはできる? https://www.facebook.com/share/r/17y24oQby9/?mibextid=wwXIfr

チャレンジ生成ツールで作成した最初の計画です

メインAIツールの評価

Claude Code

⭐⭐⭐⭐⭐

良かった点

仕様書を渡すだけで、画像処理ロジック(ピクセル値→サイコロ目への変換)からサイコロのドット描画、Streamlit UIまで一気に実装してくれた。CSSの問題(Streamlitでの開閉タグ分離不可)も原因を特定して修正してくれた。

改善してほしい点

Streamlit特有の制約(HTMLの開閉タグを別々のst.markdownで使えない)を最初から考慮してくれると、手戻りが減ってさらに良かった。

総合コメント

詳細な仕様書があれば、複雑な画像処理ロジックとモダンなUI(Liquid Glass風)を含むアプリを1.5時間程度で完成させることができた。デプロイまでスムーズにサポートしてくれて非常に満足。

公開日: 2025/12/13