程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 顯示-關於讀取lena圖像的灰度值到狀態欄的問題

顯示-關於讀取lena圖像的灰度值到狀態欄的問題

編輯:編程綜合問答
關於讀取lena圖像的灰度值到狀態欄的問題

本人小白,最近看了點數字圖像的書,為了便於圖像的分析,希望把這幅圖像的數據信息顯示在狀態欄上,但顯示的時候卻出了問題:圖片說明我想讓gray的值為該副圖片的灰度值,可這個結果顯然是不對的。先貼出在Mousemove消息下的代碼如下,希望各位大神幫忙看下哪裡出錯了 ,感激不盡
void CImageProcessView::OnMouseMove(UINT nFlags, CPoint point)
{

CClientDC dc(this);
COLORREF gray=dc.GetPixel(point);
CString str;
str.Format("x=%d,y=%d,gray=%d",point.x,point.y,gray);
((CMainFrame*) GetParent())->m_wndStatusBar.SetWindowText(str);

}

最佳回答:


COLORREF RGB
(
BYTE byRed, // red component of color
BYTE byGreen, // green component of color
BYTE byBlue // blue component of color
);
COLORREF 是一個 32-bit 整型數值,它代表了一種顏色,你直接轉換肯定不對。
BYTE r = GetRValue(colorrrefRGB);
BYTE g = GetGValue(colorrrefRGB);
BYTE b = GetBValue(colorrrefRGB);
獲取rgb值求平均。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved