グリーンチェック
クリップボードにコピーされたリンク

コンピュータ・ビジョン・アプリケーションにおける色検出の活用

RGB色空間とHSV色空間を使用してコンピュータビジョンソリューションを自動化し、色検出がヒューマンビジョンとコンピュータビジョンの架け橋となる方法を探ります。

色は人間が世界を体験する上で重要な役割を果たしており、私たちが周囲の環境を認識し、理解し、つながりを持つのに役立っている。しかし、私たちとは異なり、機械は色を見るのではなく、色をデータとして処理し、色合いや色相を数値に変換する。

自動運転車は単に赤信号を見るだけでなく、その色を停止信号として処理する。色を認識し解釈するこの能力は、人間の視覚とコンピューター・ビジョンのギャップを埋めるのに役立つ。

コンピュータ・ビジョンは、機械が視覚データを分析し理解することを可能にするAIの一分野である。その重要な側面が色検出であり、これによって機械は色に基づいて物体を識別・区別することができる。異なる色空間のピクセル値を分析することで、色検出は物体追跡、医療画像、オートメーションなどのアプリケーションで使用できる。

この記事では、色検出がどのように機能するのか、なぜ重要なのか、そしてコンピュータ・ビジョン・アプリケーションでどのように使用されるのかを詳しく見ていきます。さっそく始めましょう!

色検出とは?

色検出は、機械が色に基づいて物体を識別し、シーンを理解するのに役立ちます。他のコンピュータ・ビジョン・タスクと組み合わせることで、精度が向上し、実世界での応用が強化される。色検出の仕組みに入る前に、色がデジタルでどのように表現されるかを理解しておくと便利です。

デジタル画像はピクセルと呼ばれる小さな正方形で構成され、それぞれが色情報を持っている。例えば、RGB(Red, Green, Blue)カラーモデルでは、色は赤、緑、青の異なる強度を混合することで作られる。 

各色は0から255までの3つの値で定義され、0は無色、255は完全な濃さを意味する。例えば、純粋な赤は(255, 0, 0)で、赤の値が最も高く、緑や青はない。白は(255, 255, 255)であり、これは3色すべてが完全な強度を持つからである。

図1.コンピュータがリンゴの色をどのように見るかの例。

のようなコンピュータ・ビジョン・モデルをご存じなら、次のように説明する。 Ultralytics YOLO11のようなコンピュータ・ビジョン・モデルをご存知の方は、なぜ色検出が物体検出とは別の技術なのか不思議に思われるかもしれません。どちらも画像を分析しますが、その目的は異なります。

色検出は画像内の特定の色を識別することに重点を置き、物体検出は色に関係なく物体を認識し分類する。自動運転車のシナリオでは、色検出は信号機の赤を検出し、物体検出は信号機そのものを識別して、車が安全な運転判断を下せるようにする。

色空間の紹介

カラーモデルまたは色空間は、デジタル画像の色を表現するために使用されるシステムであり、色検出の重要な部分です。コンピュータが異なるデバイス間で一貫して色を解釈できるように、色に数値を割り当てます。色空間は、デジタルシステムで色を保存、調整、表示するための構造化された方法を提供します。

よく使われる色空間には、デジタルディスプレイ用のRGB、画像処理用のHSV(色相、彩度、明度)、印刷用のCMYK(シアン、マゼンタ、イエロー、ブラック)などがある。RGBとHSVは、色を検出するために最も頻繁に使用される色空間です。それでは、これらの機能について説明しましょう。

RGB色空間の概要

RGB色空間は、スクリーン、カメラ、ディスプレイ機器に見られるデジタル画像処理で広く使われている。RGB色空間は、赤、緑、青の光の異なるレベルを組み合わせることで、さまざまな色を作り出します。3色すべてが最大強度の場合、結果は白になり、何もない場合は黒に見える。

この色空間は色立方体として視覚化されることが多く、各軸は原色のひとつを表している。立方体の角は、純粋な赤、緑、青とそれらの組み合わせを示し、内側はすべての可能な色合いを保持する。

RGBはシンプルで一般的ですが、いくつかの制限があります。RGBは人間の色の違いの感じ方と均等ではないため、人間の目には常に同じ色に見えるとは限りません。また、照明条件にも影響されるため、明るさや環境によって色が違って見えることもある。

図2.RGBカラーキューブ。

HSV色空間の概要

HSV(色相、彩度、明度)色空間は、色相(色の種類)、彩度(色の濃さ)、明度(色の明るさ)の3つの要素に基づいて色を表現します。光の強度を混合するRGBとは異なり、HSVは人間が色を知覚する方法に近いため、多くの画像処理タスクでより実用的な選択肢となります。

特に色相は実際の色を表し、カラーホイールの度数で測定され、赤は0度、青は240度である。一方、彩度は色の鮮やかさやくすみをコントロールし、0%は完全に灰色、100%は完全に鮮やかです。一方、明度は0%(黒)から100%(完全な明度)までの値で表されます。

興味深いことに、HSV色空間はしばしば円錐形として視覚化され、色相は縁を回り込み、彩度は外側に移動し、明度は下から上に増加する。HSVは色を明度から分離するため、コンピュータ・ビジョンのアプリケーションで広く使用されています。

図3.HSVコーン。

RGB色空間とHSV色空間の比較

RGBとHSVを並べて比較するために、オレンジ色を例にしてみましょう。RGB色空間では、オレンジ色は赤と緑を特定の強度で混合することで作成され、一般的には(255, 165, 0)で表されます。しかし、RGBは色と明るさを分離しないため、正確な色操作を必要とする作業では直感的でないことがあります。

HSVでは、オレンジの定義は異なる。その色相は約30°で、カラーホイール上の位置を決定する。彩度は100%に近く、鮮やかで純粋な色であることを意味し、その値も100%で、完全な明るさを示す。HSVは明度から色を分離するため、照明条件が変化する可能性のある色検出アプリケーションでより有用であることが多い。

図4.RGB値とHSV値の比較。画像は著者による

色検出の仕組み

通常、色検出は、画像や動画から色を識別し分離するために使用される画像処理技術としてアプローチされる。画像処理を使用して画像から検出された色は、特定の色相、シェード、および強度を区別するために、色空間と閾値処理技術に依存しています。 

ここでは、画像処理による色検出の主なステップを簡単に紹介する:

  • 画像の取得:このプロセスは、カメラを使用して画像またはビデオフレームをキャプチャすることから始まる。画像は通常、ピクセルのマトリックスとしてRGB形式で保存される。
  • 色空間の変換:RGBは色検出に必ずしも理想的でないため、画像はHSV色空間に変換されます。これにより、色と明るさが分離され、異なる照明条件下でも検出がより安定します。
  • 色の閾値処理:色の閾値化:HSVフォーマットでターゲットカラーに特定の範囲が定義される。このステップでは、選択された色範囲内のピクセルが白に、それ以外のピクセルが黒に表示される2値マスクを作成します。
  • マスキング:バイナリマスクは、検出された色を分離し、他のすべてをフィルタリングするために元の画像に適用されます。これにより、目的の色に一致する部分のみが強調表示されます。

一旦色が検出され、分離されると、ロボット工学、医療画像、自律走行車などのアプリケーションにおいて、物体追跡、画像分割、自動意思決定など、様々なコンピュータビジョンタスクで使用することができる。

コンピュータビジョンにおける色検出の役割

さて、色検出がどのように機能するのかを学んだところで、コンピュータ・ビジョン・アプリケーションをどのようにサポートするのかを探ってみよう。 

特定のケースでは、色検出は、特に色が物体を区別する主な要因である制御された環境において、コンピュータビジョンモデルのより単純な代替となり得る。膨大なデータセットでモデルをトレーニングする代わりに、色検出は、大規模なラベリングや高い計算能力を必要とせずに、迅速かつ効率的なソリューションを提供します。

例えば、自動リンゴ選別システムでは、YOLO11 ようなコンピュータビジョンモデルを学習させれば、リンゴを熟度で分類することができるが、照明、テクスチャー、リンゴの種類などのバリエーションを扱うには、ラベル付けされた画像のデータセットが必要になる。 

より簡単なアプローチは、まず物体検出を使ってリンゴを検出し、次にその色を分析して熟度を判定することである。この方法は、モデルをトレーニングする代わりに、あらかじめ定義された色のしきい値に依存するため、照明や背景が急激に変化しない安定した条件下でうまく機能する。

より複雑で変化しやすい環境では、カスタムトレーニングされたモデルの方が良いかもしれませんが、色検出はリアルタイムアプリケーションにとって、高速で実用的、かつ利用しやすいソリューションです。また、より高度なソリューションに進む前に、画像処理とコンピュータ・ビジョンについて学習する際の出発点としても最適です。

色検出の実世界での応用

色検出は幅広い産業で様々な用途に使用されている。実際の使用例をいくつか見てみよう。

生地品質評価のための色検出

色検出は布地や織物の生産において極めて重要である。自動化された品質管理や欠陥識別システムで一般的に使用されている。時間がかかり、人為的ミスが起こりやすい手動検査とは異なり、自動化システムは正確でリアルタイムの欠陥検出を提供します。 

具体的には、生地の画像を分析することで、コンピューター・ビジョン・システムは、染料の不均一な分布、色あせ、汚染などの欠陥を特定することができる。高度な色検出技術により、異なるロット間の色の一貫性を測定することで、より正確な品質管理が可能になる。

図5.色彩検出は、カラフルな生地を作る上で重要な役割を果たす。

農業における色彩検出の利用

前述したように、色は成熟度を示す重要な指標であり、色検出技術は農業において作物の健康状態を監視し、収穫を改善するために使用することができる。 

色の変化を分析することで、農家は植物の健康状態を評価し、病気を検出し、作物が収穫可能な時期を判断することができる。カラー・センサーとコンピューター・ビジョンを備えた先進的なロボットは、完熟した作物だけを確実に収穫することで、プロセスの自動化に役立つ。これらのシステムは、特に労働力不足の地域において、効率と生産性を向上させることができる。

図6.熟度の異なるマンゴー:(a)腐った、(b)熟した、(c)未熟。

要点

色検出は、農業、製造業、ヘルスケア、オートメーションなどに応用されている革新的なコンピュータービジョン技術である。機械が物体追跡、品質管理、意思決定のために色を認識・解釈するのに役立ちます。 

高度なAIモデルは進化を続けているが、色検出は、特に管理された環境においては、依然としてシンプルで効果的なソリューションである。技術が進歩するにつれて、実世界のアプリケーションを改善する上で重要な役割を果たし続けるだろう。

私たちのコミュニティと GitHubリポジトリを探索することで、AIをより深く掘り下げましょう。製造業におけるAIと ヘルスケアにおけるコンピュータビジョンの革新について学び、私たちのライセンスオプションでVision AIを活用する方法を見つけましょう。

Facebookのロゴツイッターのロゴリンクトインのロゴコピー・リンク・シンボル

このカテゴリの続きを読む

AIの未来
を一緒に作りましょう!

機械学習の未来への旅を始めよう