V
voon
Guest
hi, tamo ... ja događaj i žure moje posljednje godine projekt ... trebam znati kako to pretvoriti predodžba to rgb sivim tonovima slike u c MFC ... ispod je moj broj ... ali .. ne može funkcionirati ... zašto Leh ... tis kôd je na dugme zove Normalizacija ... po slici prikaz slika će se promijeniti u sivim tonovima, nakon JA klik Normalizacija dugme ... učitavanje i prikaz slika ja već učinjeno ... pa ... to samo pretvori u boji nisu škripac ... tako da ... može li mi pomoći da izmijeni moj broj za sivim tonovima ... hvala puno mi pomaže i odgovaranjem .. nadam čujemo se uskoro .. . ako ne mogu vidjeti moj koda ispod .. onda .. pls skinuti zip datoteka ja poslao ... tis zip datoteka je moj c MFC program ... hvala ...praznina CFingerprintSystem_FASSDlg:: OnNormalization ()(/ / TODO: Add your kontrola kod rukovatelj obavijest ovdje
CString m_sBitmap;
HBITMAP hGrayBitmap = (HBITMAP):: LoadImage (AfxGetInstanceHandle (),m_sBitmap, IMAGE_BITMAP, 100.140, LR_LOADFROMFILE |LR_CREATEDIBSECTION);
Bitmap bm;
GetObject (hGrayBitmap, sizeof (bitmapa), (LPSTR) & bm);
typedef struct tagBITMAP(LONG bmType;LONG bmWidth;LONG bmHeight;LONG bmWidthBytes;RIJEČ bmPlanes;RIJEČ bmBitsPixel;LPVOID bmBitsBitmap, * PBITMAP;
if (hGrayBitmap)(CStatic * pImg = (CStatic *) GetDlgItem (IDC_STATIC_Processed);BYTE * pImgByte = (BYTE *) bm.bmBits;if (pImg == NULL)(AfxMessageBox ( "ne uspijevaju pretvoriti u sivim tonovima")drugi(
INT iWidthBytes = bm.bmWidth * 3;
for (int y = 0, y <bm.bmHeight; y )(for (int x = 0, x <bm.bmWidth * 3; x )(
unsigned char R = pImgByte [y * iWidthBytes x 2];unsigned char G = pImgByte [y * iWidthBytes x 1];unsigned char B = pImgByte [y * iWidthBytes x];;
INT siva = staviti strop (0,3 * 0,59 * R G 0,11 * B);
pImgByte [y * iWidthBytes x 2] = gray;pImgByte [y * iWidthBytes x 1] = gray;pImgByte [y * iWidthBytes x] = gray)
pImg-> SetBitmap (hGrayBitmap);
)))
CString m_sBitmap;
HBITMAP hGrayBitmap = (HBITMAP):: LoadImage (AfxGetInstanceHandle (),m_sBitmap, IMAGE_BITMAP, 100.140, LR_LOADFROMFILE |LR_CREATEDIBSECTION);
Bitmap bm;
GetObject (hGrayBitmap, sizeof (bitmapa), (LPSTR) & bm);
typedef struct tagBITMAP(LONG bmType;LONG bmWidth;LONG bmHeight;LONG bmWidthBytes;RIJEČ bmPlanes;RIJEČ bmBitsPixel;LPVOID bmBitsBitmap, * PBITMAP;
if (hGrayBitmap)(CStatic * pImg = (CStatic *) GetDlgItem (IDC_STATIC_Processed);BYTE * pImgByte = (BYTE *) bm.bmBits;if (pImg == NULL)(AfxMessageBox ( "ne uspijevaju pretvoriti u sivim tonovima")drugi(
INT iWidthBytes = bm.bmWidth * 3;
for (int y = 0, y <bm.bmHeight; y )(for (int x = 0, x <bm.bmWidth * 3; x )(
unsigned char R = pImgByte [y * iWidthBytes x 2];unsigned char G = pImgByte [y * iWidthBytes x 1];unsigned char B = pImgByte [y * iWidthBytes x];;
INT siva = staviti strop (0,3 * 0,59 * R G 0,11 * B);
pImgByte [y * iWidthBytes x 2] = gray;pImgByte [y * iWidthBytes x 1] = gray;pImgByte [y * iWidthBytes x] = gray)
pImg-> SetBitmap (hGrayBitmap);
)))