2011-09-08 5 views
0

私は、色の調整をする人々を助けるために、さまざまな色見本を表示するアプリケーションを作成しています。実際のオブジェクトのRGB値はどのようにして見つけることができますか?RGB値の検出と実装

たとえば、色の1つがRed Appleですが、明らかに赤いリンゴは赤だけではありません。それには他の色のヒントがあります。オブジェクトごと

+0

ための関連法と説明カメラあなたのコンピュータに接続すると役に立つでしょう。 – bmargulies

答えて

0

正直言って簡単なことではありませんが、デジタルカメラやフラットベッドスキャナを使うのがよいでしょう。

コンピュータにイメージを置いたら、タスクはやや楽になります。アプリケーションで使用する前に、Photoshopやgimpなどの画像/写真編集パッケージを使用して色を選択するだけです。

サンプルがいったん見つかれば、それらの平均を取る必要があります。これは非常に簡単です。あなたは単にあなたがとてもかかった多くのサンプルによって、各コンポーネントと除算を追加する必要が

255,50,10 
    250,40,11 
    253,51,15 
    248,60,13 
    254,45,20 

Red = (255 + 250 + 253 + 248 + 254)/5 
    Green = (50 + 40 + 51 + 60 + 45)/5 
    Blue = (10 + 11 + 15 + 13 + 20)/5 

、あなたの提示がどのようにどのような場合は、RGB値の5つのサンプルを取ったとしましょう私はこれをプログラムコードで自動的に行うのですか?それは、まったく異なる魚のケトルです。まずウェブカムのようなものが必要です。ウェブカムから画像をキャプチャするコードを書く必要があります。イメージを作成するには、色を選択するだけでなく、実際にイメージから色を選択するオブジェクトの位置を実際に把握する必要があります。

今のところ私は最初の方法を使用して見ていますが、これは少しマニュアルですが、私は同意しますが、はるかに簡単で始めることができます。

2番目の数学を行うために必要な画像処理は、ソフトウェアエンジニア&に何年もの科学者の頭痛を与えていますが、まだ完全な科学ではありません...そして、それは数学についても考え始めます。

+0

私のウェブカメラは私のラップトップに接続していますが、色の値をファイルに保存するための簡単なJavaプログラムを書くことができればと願っています。フレームの中央にオブジェクトを置いて中央に色をつけるようなものを考えていました – bedward

+0

そうなら、画像から得られるRGB値は、光、位置、カメラに応じて非常に変化します設定。 – daniloquio

+0

私はここでダニロキオに同意しなければなりません。同じ場所であっても、色と光のバリエーションが大きく異なる可能性があります。あなたが言及する目的のためにこれを使用する場合、あなたは本当に毎回同じ色合いを得るために100%を試してみたいです。 – shawty

0

、私はそれをこのように行うだろう:あなたがするオブジェクトの画像を検索する

  1. 使用goolge画像を。
  2. たとえば、「赤いリンゴ」という考え方に対して、最も正確な色を持つものを選択します。

- オブジェクトのデジタル画像がある場合は1と2をスキップできます。

  1. ペイントでその画像を開きます。キーボードの "Impr Pant"キーを叩き、Paintを開き、 "Ctrl + V"を押すとスクリーンショットがペイントに貼り付けられます。
  2. ペイント上のピックカラーツール(ドロッパーのようなもの)を選択し、イメージをクリックします。
  3. メニューから[色 - >色を編集]を選択し、次に[色のパレット]で[カスタム色の定義]をクリックします。
  4. あなたはそこにRGB値があります。

簡単な方法が必要ですが、これは機能します。

+0

Google画像が正常に動作するかもしれませんが、非常に時間がかかります。私はいくつかのJavaを学んだので、私はそれを行うためのプログラムを書くことができると期待していた – bedward

+0

私はあなたの目的を考えれば良い考えではないと思う。 [注:私の方法は私に{Red Apple = RGB(158,28,36)}を与えますが、それは別の人と異なるAppleの好みのために大きく変わるでしょう] – daniloquio

0

プログラマティックなソリューションをお探しの場合は、bitwise operationsをご覧ください。ここでの一般的なアイデアは、そのイメージをバイナリルートで読むことです。その後、ビットを論理的にRGB値に変換できます。プログラミング言語に応じてこれを行う方法はいくつかあります。ここにActionscript3のメソッドがあります。 (AS3用)

http://www.flashandmath.com/intermediate/rgbs/explanations.html

またあなたは、平均色を探している場合はここを見て、

http://blog.soulwire.co.uk/code/actionscript-3/extract-average-colours-from-bitmapdata

のJava

Bitwise version of finding RGB in java

関連する問題