このアプリの仕組み
概要
手のひらの画像から、深層学習のセグメンテーションモデル(YOLO)が7種類の手相線を
ピクセル単位で検出します。検出した各線について、画像処理(OpenCV)で
長さ・太さ・曲がりを数値として測定し、独自の統計データと生成AI(Gemini)を組み合わせて、
「5つの資質」とあなただけの鑑定文を導き出します。
処理の流れ
- 線の検出YOLOが7クラスの手相線をセグメンテーション
- 特徴量の測定各線の相対長・曲率・太さをOpenCVで計算
- 資質への変換特徴量を5つの資質スコアに変換
- 鑑定文の生成検出データと解析ルールを生成AIに渡し、前向きな鑑定文を作成
自作データセットに基づく統計的判定
手相の線は種類によって基準となる長さや太さが異なります(例:生命線はもともと長く、結婚線はもともと短い)。そのため、本システムでは適当な固定値での判定は行っていません。
開発者が手作業でアノテーション(ピクセル単位のラベル付け)を行った数百枚の実データから、線の種類ごとに「相対長・太さ・曲率」の分布データを算出しています。その集計結果をもとに、すべての線を公平に以下の3段階に振り分けて判定しています。
- 上位33%(66パーセンタイル以上) : 長い / 太い / 曲線的
- 中間の34% : 標準的
- 下位33%(33パーセンタイル以下) : 短い / 細い / 直線的
特徴量の意味
| 相対長 | 手のひらの大きさに対する線の長さ。 |
| 曲率 | 線の曲がり具合。 |
| 太さ | 線の太さ。面積と周囲長の比率から算出。 |
| 信頼度 | AIが「その線である」と判断した確からしさ(0〜1)。低確率の線は「秘めた可能性」として解釈します。 |
各線の判定ルール
画像解析の結果として「2. 各線の特徴量」の表には、測定された事実として「短い」「細い」とそのまま表示されることがあります。
しかし、本アプリの「鑑定」においては、短い・細いことをネガティブ(悪い意味)には捉えません。あなたの際立った強み(上位33%に該当する長い・太い部分)や直線的といった特徴だけを抽出し、下表の解釈を用いて100%ポジティブな鑑定文を作成する仕組みになっています。
5つの資質について
検出された線の特徴量から、5つの資質(生命力・愛情力・思考力・行動力・幸運度)を
算出しています。検出されにくい太陽線・財運線・結婚線は「幸運度」にまとめることで、
いずれかが検出されれば値が入るように工夫しています。