Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. full code for comparing bitmaps

full code for comparing bitmaps

Scheduled Pinned Locked Moved C / C++ / MFC
19 Posts 8 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Michael Schubert

    No problem. What's your preferred method of payment? PayPal?

    K Offline
    K Offline
    kaushal kishore sharma
    wrote on last edited by
    #3

    sry my friend.. i have account on paypal but i have not done any work yet due to busy in college..but if you can provide me the code for this i will be very thankful to you.. rest is your wish..thanks for the reply..

    R 1 Reply Last reply
    0
    • K kaushal kishore sharma

      can anyone send me full code for comparing two bitmaps... thank you..

      CPalliniC Offline
      CPalliniC Offline
      CPallini
      wrote on last edited by
      #4

      if (bitmap1 == bitmap2)

      BTW Don't forget to visit www.cpallini.freeproductz.com for more free 'full code'. :-D

      If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
      This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
      [My articles]

      In testa che avete, signor di Ceprano?

      R K M H 4 Replies Last reply
      0
      • CPalliniC CPallini

        if (bitmap1 == bitmap2)

        BTW Don't forget to visit www.cpallini.freeproductz.com for more free 'full code'. :-D

        If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
        This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
        [My articles]

        R Offline
        R Offline
        Rajesh R Subramanian
        wrote on last edited by
        #5

        :laugh:

        Many are stubborn in pursuit of the path they have chosen, few in pursuit of the goal - Friedrich Nietzsche .·´¯`·->Rajesh<-·´¯`·. [Microsoft MVP - Visual C++]

        CPalliniC 1 Reply Last reply
        0
        • R Rajesh R Subramanian

          :laugh:

          Many are stubborn in pursuit of the path they have chosen, few in pursuit of the goal - Friedrich Nietzsche .·´¯`·->Rajesh<-·´¯`·. [Microsoft MVP - Visual C++]

          CPalliniC Offline
          CPalliniC Offline
          CPallini
          wrote on last edited by
          #6

          Damnit, you're so fast! :rolleyes: :)

          If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
          This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
          [My articles]

          In testa che avete, signor di Ceprano?

          1 Reply Last reply
          0
          • CPalliniC CPallini

            if (bitmap1 == bitmap2)

            BTW Don't forget to visit www.cpallini.freeproductz.com for more free 'full code'. :-D

            If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
            This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
            [My articles]

            K Offline
            K Offline
            kaushal kishore sharma
            wrote on last edited by
            #7

            pallini..thnx..but i need a full running code for comparing 2 bitmaps.. i have posted my code but i cant understand what is wrong in my code... can you help please.. 1. void CPixelView::OnDraw(CDC* pDC) { CPixelDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for native data here { COLORREF color[255][255],color1[255][255]; CBitmap bitmap,bitmap1; CString file1,file2,strText; file1.Format("C:\\1.bmp"); file2.Format("C:\\3.bmp"); CDC dcMemory,dcMemory1; int r[255][255],R[255][255]; // 1st image HBITMAP hBitmap1 = (HBITMAP)::LoadImage(NULL,file1,IMAGE_BITMAP, 0, 0,LR_LOADFROMFILE );//| LR_CREATEDIBSECTION); //2nd image HBITMAP hBitmap2 = (HBITMAP)::LoadImage(NULL,file2,IMAGE_BITMAP, 0, 0,LR_LOADFROMFILE ); // Attach the loaded image to the CBitmap object. bitmap.Attach(hBitmap1); bitmap1.Attach(hBitmap2); dcMemory.CreateCompatibleDC(pDC); dcMemory.SelectObject(&bitmap); dcMemory1.CreateCompatibleDC(pDC); dcMemory1.SelectObject(&bitmap1); pDC->BitBlt(0,0,200,200,&dcMemory,0,0,SRCCOPY); pDC->BitBlt(0,0,300,700,&dcMemory1,0,0,SRCCOPY); //for all the pixels for(int i=0;i<48;i++) { for(int j=0;j<48;j++) { HDC hDC = ::GetDC(this->GetSafeHwnd()); color[i][j] = ::GetPixel(hDC,i,j); ::ReleaseDC(this->GetSafeHwnd(), hDC); r[i][j]=GetRValue(color[i][j]); HDC hDC1 = ::GetDC(this->GetSafeHwnd()); color1[i][j] = ::GetPixel(hDC1,i,j); ::ReleaseDC(this->GetSafeHwnd(), hDC1); R[i][j]=GetRValue(color1[i][j]); } }//got the pixel values } }

            M M 2 Replies Last reply
            0
            • K kaushal kishore sharma

              sry my friend.. i have account on paypal but i have not done any work yet due to busy in college..but if you can provide me the code for this i will be very thankful to you.. rest is your wish..thanks for the reply..

              R Offline
              R Offline
              Rajesh R Subramanian
              wrote on last edited by
              #8

              Read the guidelines[^] before you make another post. For once, what is pissing me off is your TXSTPK. Stop using SMS language here. Hundreds of people read it every day. So, act like a professional.

              Many are stubborn in pursuit of the path they have chosen, few in pursuit of the goal - Friedrich Nietzsche .·´¯`·->Rajesh<-·´¯`·. [Microsoft MVP - Visual C++]

              M 1 Reply Last reply
              0
              • CPalliniC CPallini

                if (bitmap1 == bitmap2)

                BTW Don't forget to visit www.cpallini.freeproductz.com for more free 'full code'. :-D

                If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                [My articles]

                M Offline
                M Offline
                Michael Schubert
                wrote on last edited by
                #9

                Ingenious. ;)

                1 Reply Last reply
                0
                • K kaushal kishore sharma

                  pallini..thnx..but i need a full running code for comparing 2 bitmaps.. i have posted my code but i cant understand what is wrong in my code... can you help please.. 1. void CPixelView::OnDraw(CDC* pDC) { CPixelDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for native data here { COLORREF color[255][255],color1[255][255]; CBitmap bitmap,bitmap1; CString file1,file2,strText; file1.Format("C:\\1.bmp"); file2.Format("C:\\3.bmp"); CDC dcMemory,dcMemory1; int r[255][255],R[255][255]; // 1st image HBITMAP hBitmap1 = (HBITMAP)::LoadImage(NULL,file1,IMAGE_BITMAP, 0, 0,LR_LOADFROMFILE );//| LR_CREATEDIBSECTION); //2nd image HBITMAP hBitmap2 = (HBITMAP)::LoadImage(NULL,file2,IMAGE_BITMAP, 0, 0,LR_LOADFROMFILE ); // Attach the loaded image to the CBitmap object. bitmap.Attach(hBitmap1); bitmap1.Attach(hBitmap2); dcMemory.CreateCompatibleDC(pDC); dcMemory.SelectObject(&bitmap); dcMemory1.CreateCompatibleDC(pDC); dcMemory1.SelectObject(&bitmap1); pDC->BitBlt(0,0,200,200,&dcMemory,0,0,SRCCOPY); pDC->BitBlt(0,0,300,700,&dcMemory1,0,0,SRCCOPY); //for all the pixels for(int i=0;i<48;i++) { for(int j=0;j<48;j++) { HDC hDC = ::GetDC(this->GetSafeHwnd()); color[i][j] = ::GetPixel(hDC,i,j); ::ReleaseDC(this->GetSafeHwnd(), hDC); r[i][j]=GetRValue(color[i][j]); HDC hDC1 = ::GetDC(this->GetSafeHwnd()); color1[i][j] = ::GetPixel(hDC1,i,j); ::ReleaseDC(this->GetSafeHwnd(), hDC1); R[i][j]=GetRValue(color1[i][j]); } }//got the pixel values } }

                  M Offline
                  M Offline
                  Michael Schubert
                  wrote on last edited by
                  #10

                  kaushal kishore sharma wrote:

                  allini..thnx..but i need a full running code for comparing 2 bitmaps

                  He just posted the code.

                  1 Reply Last reply
                  0
                  • R Rajesh R Subramanian

                    Read the guidelines[^] before you make another post. For once, what is pissing me off is your TXSTPK. Stop using SMS language here. Hundreds of people read it every day. So, act like a professional.

                    Many are stubborn in pursuit of the path they have chosen, few in pursuit of the goal - Friedrich Nietzsche .·´¯`·->Rajesh<-·´¯`·. [Microsoft MVP - Visual C++]

                    M Offline
                    M Offline
                    Michael Schubert
                    wrote on last edited by
                    #11

                    Rajesh R Subramanian wrote:

                    For once, what is pissing me off is your TXSTPK

                    You forgot the ASAP and URGENTZZ

                    1 Reply Last reply
                    0
                    • K kaushal kishore sharma

                      pallini..thnx..but i need a full running code for comparing 2 bitmaps.. i have posted my code but i cant understand what is wrong in my code... can you help please.. 1. void CPixelView::OnDraw(CDC* pDC) { CPixelDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for native data here { COLORREF color[255][255],color1[255][255]; CBitmap bitmap,bitmap1; CString file1,file2,strText; file1.Format("C:\\1.bmp"); file2.Format("C:\\3.bmp"); CDC dcMemory,dcMemory1; int r[255][255],R[255][255]; // 1st image HBITMAP hBitmap1 = (HBITMAP)::LoadImage(NULL,file1,IMAGE_BITMAP, 0, 0,LR_LOADFROMFILE );//| LR_CREATEDIBSECTION); //2nd image HBITMAP hBitmap2 = (HBITMAP)::LoadImage(NULL,file2,IMAGE_BITMAP, 0, 0,LR_LOADFROMFILE ); // Attach the loaded image to the CBitmap object. bitmap.Attach(hBitmap1); bitmap1.Attach(hBitmap2); dcMemory.CreateCompatibleDC(pDC); dcMemory.SelectObject(&bitmap); dcMemory1.CreateCompatibleDC(pDC); dcMemory1.SelectObject(&bitmap1); pDC->BitBlt(0,0,200,200,&dcMemory,0,0,SRCCOPY); pDC->BitBlt(0,0,300,700,&dcMemory1,0,0,SRCCOPY); //for all the pixels for(int i=0;i<48;i++) { for(int j=0;j<48;j++) { HDC hDC = ::GetDC(this->GetSafeHwnd()); color[i][j] = ::GetPixel(hDC,i,j); ::ReleaseDC(this->GetSafeHwnd(), hDC); r[i][j]=GetRValue(color[i][j]); HDC hDC1 = ::GetDC(this->GetSafeHwnd()); color1[i][j] = ::GetPixel(hDC1,i,j); ::ReleaseDC(this->GetSafeHwnd(), hDC1); R[i][j]=GetRValue(color1[i][j]); } }//got the pixel values } }

                      M Offline
                      M Offline
                      Maximilien
                      wrote on last edited by
                      #12

                      Well, you're "getting there"; Me thing you do not need to keep arrays of COLORREF or the r and R arrays You should be able to get the size of the bitmaps dynamically (because a bitmap of 48 pixel is really small) No need to get the DC twice. Now that you have the color for the same pixel position in both bitmaps; what should you be doing with them ? compare them ? maybe ?

                      This signature was proudly tested on animals.

                      K 1 Reply Last reply
                      0
                      • K kaushal kishore sharma

                        can anyone send me full code for comparing two bitmaps... thank you..

                        L Offline
                        L Offline
                        Lost User
                        wrote on last edited by
                        #13

                        how many times do you need to post this same question?

                        1 Reply Last reply
                        0
                        • CPalliniC CPallini

                          if (bitmap1 == bitmap2)

                          BTW Don't forget to visit www.cpallini.freeproductz.com for more free 'full code'. :-D

                          If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                          This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                          [My articles]

                          H Offline
                          H Offline
                          Hamid Taebi
                          wrote on last edited by
                          #14

                          :laugh: And can we use of this code for other formats like jpg? :laugh:

                          CPalliniC 1 Reply Last reply
                          0
                          • K kaushal kishore sharma

                            can anyone send me full code for comparing two bitmaps... thank you..

                            H Offline
                            H Offline
                            Hamid Taebi
                            wrote on last edited by
                            #15

                            Of course you can use of CImage class for read your bitmap files and like your code you can use of two loop(See CImage::GetPixel) I think its easy than your code.

                            1 Reply Last reply
                            0
                            • M Maximilien

                              Well, you're "getting there"; Me thing you do not need to keep arrays of COLORREF or the r and R arrays You should be able to get the size of the bitmaps dynamically (because a bitmap of 48 pixel is really small) No need to get the DC twice. Now that you have the color for the same pixel position in both bitmaps; what should you be doing with them ? compare them ? maybe ?

                              This signature was proudly tested on animals.

                              K Offline
                              K Offline
                              kaushal kishore sharma
                              wrote on last edited by
                              #16

                              thank you for the reply. can you tell how to make changes in the code. I am studying VC++ so not too much knowledge about the language.So can you help me with the code. Yes i am comparing both bitmap for checking whether both images are same or different. Thank You kaushal kishore Sharma kaushal..

                              1 Reply Last reply
                              0
                              • K kaushal kishore sharma

                                can anyone send me full code for comparing two bitmaps... thank you..

                                PJ ArendsP Offline
                                PJ ArendsP Offline
                                PJ Arends
                                wrote on last edited by
                                #17

                                http://www.codeproject.com/KB/graphics/BitmapCompare.aspx[^] And also http://www.codeproject.com/script/Forums/View.aspx?fid=368891&msg=1957223[^]

                                Within you lies the power for good; Use it!

                                1 Reply Last reply
                                0
                                • H Hamid Taebi

                                  :laugh: And can we use of this code for other formats like jpg? :laugh:

                                  CPalliniC Offline
                                  CPalliniC Offline
                                  CPallini
                                  wrote on last edited by
                                  #18

                                  Hamid. wrote:

                                  And can we use of this code for other formats like jpg?

                                  Nope. You have to change it:

                                  if ( jpegImage1 == jpegImage2) ...

                                  Details for all image formats on www.cpallini.freeproductz.com. :)

                                  If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                                  This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                                  [My articles]

                                  In testa che avete, signor di Ceprano?

                                  H 1 Reply Last reply
                                  0
                                  • CPalliniC CPallini

                                    Hamid. wrote:

                                    And can we use of this code for other formats like jpg?

                                    Nope. You have to change it:

                                    if ( jpegImage1 == jpegImage2) ...

                                    Details for all image formats on www.cpallini.freeproductz.com. :)

                                    If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                                    This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                                    [My articles]

                                    H Offline
                                    H Offline
                                    Hamid Taebi
                                    wrote on last edited by
                                    #19

                                    I decided to made a supplement for your magic site. :-D

                                    1 Reply Last reply
                                    0
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    • Login

                                    • Don't have an account? Register

                                    • Login or register to search.
                                    • First post
                                      Last post
                                    0
                                    • Categories
                                    • Recent
                                    • Tags
                                    • Popular
                                    • World
                                    • Users
                                    • Groups