[リストへもどる]
一括表示

投稿時間:2003/10/30(Thu) 22:32
投稿者名:くるるん
Eメール:
URL :
タイトル:
画像の輝度情報の取得
初めて投稿させていただきます。いつも拝見させて頂いております。

pictureboxに表示させた画像の輝度情報をピクセル単位で取得し、
配列に代入したいのですが、
まずpictureboxに表示させた画像のRGB成分を取得するのでしょうか?
(この「RGB情報の取得方法」がイマイチわかりません)
その場合、RGB成分をもとにして、輝度(YUVのY成分)は
Y = 0.299*R + 0.587*G + 0.114*B
で計算したものでよいのでしょうか?

質問ばかりで申し訳ございませんが、ご回答宜しくお願い致します。

投稿時間:2003/10/31(Fri) 00:54
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: 画像の輝度情報の取得
グレースケール変換という事でしょうか?
高速に処理したい場合はAPIを酷使する必要がありますが。

Private Sub Command1_Click()
    Dim x As Long, y As Long, pColor As Long
    Dim R As Long, G As Long, B      As Long
    Picture1.ScaleMode = vbPixels
    For x = 0 To Picture1.ScaleWidth -1
        For y = 0 To Picture1.ScaleHeight -1
            pColor = Picture1.Point(x, y)
            R = pColor And vbRed
            G = (pColor And vbGreen) \ &H100
            B = (pColor And vbBlue) \ &H10000
            pColor = 0.299 * R + 0.587 * G + 0.114 * B
            Picture1.PSet (x, y), RGB(pColor, pColor, pColor)
        Next y
    Next x
End Sub
                                                                                                                                                                                              
http://www.google.com/search?q=Y+%3D+0.299*R+%2B+0.587*G+%2B+0.114*B&num=50&hl=ja&filter=0&lr=lang_ja

投稿時間:2003/11/01(Sat) 00:26
投稿者名:くるるん
Eメール:
URL :
タイトル:
やってみたのですが
ありがとうございます。
さっそく試してみたのですが、輝度情報取得のみの処理だけでも
やはり処理に時間がかかってしまいます。
(160×120ピクセルで5秒程度)

できればタイムラグは極力なくしたいので、
大変申し訳ございませんが、高速で処理できるAIPを使用した方法を
教えていただけないでしょうか?

何度も申し訳ございませんが、宜しくお願いいたします。

投稿時間:2003/11/01(Sat) 08:55
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: やってみたのですが(訂正)
>(160×120ピクセルで5秒程度)
それほどかかりますかね?前期のプログラムの処理以外の部分に時間が掛かっているのでは
ないでしょうか?
363×258ピクセルの画像を前記のプログラムで実行すれば1秒〜2秒で処理できるはずですが
Win98 SE Celeron 466MHz VB6.0 pColor = Picture1.Point(x, y)

Picture1.PSet (x, y), RGB(pColor, pColor, pColor)
の部分をAPIの GetPixel(hDC1, x, y) と SetPixelV hDC2, x1, y1, c に置き換えると
若干早くなります。

それ以上早くするには
GetDIBits
SetDIBits
CreateCompatibleBitmap
SelectObject
DeleteObject
以上のAPIを使用すればかなり早くなります。
関数名で検索すればサンプルも見つかります。

投稿時間:2003/11/01(Sat) 10:08
投稿者名:Zu
Eメール:zuadmin@tokutoku.or.jp
URL :
タイトル:
Re^2: やってみたのですが
いつもお世話になっています。

APIを使ったRGB取得ですが、
以前、画像解析を行った際、使ったことがあります。
640×480ピクセル画像の読み書きで0.4秒ぐらいでした。

この掲示板に書くと長くなってしまうので、
メールアドレスを教えて頂ければ、御送りします。

投稿時間:2003/11/03(Mon) 11:23
投稿者名:くるるん
Eメール:
URL :
タイトル:
Re^3: やってみたのですが
花ちゃん様、Zu様、ご回答ありがとうございます。

当方、Celeron500MHz、Win98SE、メモリ256ですが、
どうも他のアプリも遅いのでPC自体の問題かもしれません。
(先月クリーンインストールしなおしたばかりですが)

>Zu様
ご連絡ありがとうございます。早速メールをお送りさせて頂きます。