quang cao hosting

Bài tập Hướng dẫn tính toán và vẽ Histogram của ảnh ( Chương trình )

Xem: 6487    Tải: 1   Thảo luận: 0   Mục: Đồ án, luận văn, báo cáo   Lĩnh vực: Nghệ thuật - Nhiếp ảnh

10 điểm   ( 26 đánh giá ) File đã được kiểm thử
4 MEGA [megacode]bai-tap-huong-dan-tinh-toan-va-ve.rar (3.70 MB)
Phí tải ~ 8,000 đ

Bạn cần phải Đăng nhập để tải file [megacode]bai-tap-huong-dan-tinh-toan-va-ve.rar
Nếu bạn chưa có tài khoản thì Đăng ký miễn phí tại đây

Báo lỗi download   Báo vi phạm bản quyền

Bài tập Hướng dẫn tính toán và vẽ Histogram của ảnh. Trong tệp ProcessingImageDoc.cpp tạo một hàm MakeHistogram() (phải khai báotên hàm trong tệp ProcessingImageDoc.h)

1. Tính histogram

Trong tệp ProcessingImageDoc.cpp tạo một hàm MakeHistogram() (phải  khai báotên hàm trong tệp ProcessingImageDoc.h)

void CProcessingImageDoc::MakeHistogram()

{

            if (m_hDib!=NULL)

            {

                        LPSTR lpDib = (LPSTR)::GlobalLock((HGLOBAL)m_hDib);

                        //Get the BITMAPINFO data

PBITMAPINFO lpBmif = (LPBITMAPINFO)lpDib;

                        LPSTR lpbi;

                        if (numcolor<=256)

                        lpbi = lpDib + sizeof(BITMAPINFOHEADER) + numcolor*sizeof(RGBQUAD);

                        else      lpbi = lpDib + sizeof(BITMAPINFOHEADER);

                        if (Histor!=NULL) free(Histor);

                        if (Histog!=NULL) free(Histog);

                        if (Histob!=NULL) free(Histob);      

if (Histo!=NULL) free(Histo);

Histo = (LPDWORD)malloc(256*sizeof(DWORD));

                        Histor = (LPDWORD)malloc(256*sizeof(DWORD));

                        Histog = (LPDWORD)malloc(256*sizeof(DWORD));

                        Histob = (LPDWORD)malloc(256*sizeof(DWORD));

                        for (int i=0;i<256;i++)

                        {

                                    Histor[i] = 0;   Histog[i] = 0;   Histob[i] = 0; Histo[i] = 0;

                        }

                        DWORD d=0;

                        BYTE ByteRead;

                        while (d<dwBitSize)

                        {

                                    ByteRead =*(lpbi+d);

                                    BYTE red=lpBmif->bmiColors[ByteRead].rgbRed;

                                    BYTE green=lpBmif->bmiColors[ByteRead].rgbGreen;

                                    BYTE blue=lpBmif->bmiColors[ByteRead].rgbBlue;

                                    Histo[ByteRead]++;

                                    Histor[red]++;

                                    Histog[green]++;

                                    Histob[blue]++;

                                    d++;

                        }

                        ::GlobalUnlock((HGLOBAL) m_hDib);

            }

}

Bài tập Hướng dẫn tính toán và vẽ Histogram của ảnh ( Chương trình )

Bài tập Hướng dẫn tính toán và vẽ Histogram của ảnh ( Chương trình ) Đăng ngày 11-10-2013  Bài tập Hướng dẫn tính toán và vẽ Histogram của ảnh. Trong tệp ProcessingImageDoc.cpp tạo một hàm MakeHistogram() (phải khai báotên hàm trong tệp ProcessingImageDoc.h) 0.38461538461538/10 6487

Thảo luận:

Để bình luận bạn phải đăng nhập thành viên.

File tương tự

Files cùng mục

 
File gợi ý cho bạn
File tải nhiều nhất
Megacode.vn - Thư viện mã nguồn chia sẻ, tải file cho cộng đồng
Copyright © 2013-2021. All rights reserved. Bản quyền thuộc VinaGon
Email: info@vinagon.com
Hotline: 086.924.3838