资源简介
criminisi算法可运行程序,该版本伟调用opencv库。如有不能运行的的童鞋请联系我。24小时上门服务调试。
代码片段和文件信息
/////////////////////////////////////////////////////////////////////////////
//
// Image . cpp
//
// 8 / 24 bits Device Independent Bitmap manipulations
//
// Copyright (c) 1999 by ArcSoft Inc.
//
// Version 2.0
//
// Last modified: June 1999
//
// Programmer: Alex Zhou
//
/////////////////////////////////////////////////////////////////////////////
#include “stdafx.h“
#include
#include
#include
#include “image.h“
/////////////////////////////////////////////////////////////////////////////
//
// class CImage
//
/////////////////////////////////////////////////////////////////////////////
CImage::CImage()
{
m_bIsAttached = FALSE;
m_hDib = NULL;
m_pBMI = NULL;
m_pPixel = NULL;
}
CImage::CImage(HANDLE hDib)
{
CImage();
m_bIsAttached = TRUE;
Attach(hDib);
}
#ifdef _DEBUG
CImage::CImage(LONG width LONG height WORD bitCount)
{
CImage();
if (!Create(width height bitCount) )
MessageBox(NULL “Memory Insufficient.“ “CImage Run-Time Error Message“ MB_OK);
}
#endif
CImage::~CImage()
{
Release();
}
/////////////////////////////////////////////////////////////////////////////
BOOL CImage::Lock()
{
if ( ! ( m_pBMI = (LPBITMAPINFO) GlobalLock(m_hDib) ) )
return FALSE;
switch (m_pBMI->bmiHeader.biBitCount)
{
case 1:
m_pPixel = (LPBYTE) m_pBMI + sizeof(BITMAPINFOHEADER) + 2 * sizeof(RGBQUAD);
break;
case 8:
m_pPixel = (LPBYTE) m_pBMI + sizeof(BITMAPINFOHEADER) + 256 * sizeof(RGBQUAD);
break;
case 16:
case 24:
m_pPixel = (LPBYTE) m_pBMI + sizeof(BITMAPINFOHEADER);
break;
default:
assert(FALSE);
}
return TRUE;
}
BOOL CImage::Unlock()
{
return GlobalUnlock(m_hDib);
}
/////////////////////////////////////////////////////////////////////////////
LONG CImage::GetColorEntries(LPBITMAPINFO pBMI)
{
assert(pBMI);
if (pBMI->bmiHeader.biClrUsed != 0)
return pBMI->bmiHeader.biClrUsed;
switch (pBMI->bmiHeader.biBitCount)
{
case 1:
return 2;
case 4:
return 16;
case 8:
return 256;
default:
return 0;
}
}
// zdjiang added functions for super-resolution 24-5-2001
HANDLE CImage::BilinearZoomIn(int ratio)
{
assert(m_pBMI->bmiHeader.biBitCount == 8 || m_pBMI->bmiHeader.biBitCount == 24);
int nZoomWidth = Width() * ratio;
int nZoomHeight = Height() * ratio;
int bitCount = m_pBMI->bmiHeader.biBitCount;
HANDLE hDib;
LPBITMAPINFO pBmpInfo;
LONG lColors lColorTableSize lBitsSize lBISize lWidthBytes;
BITMAPINFOHEADER BmpInfoHdr;
BmpInfoHdr.biSize = sizeof(BITMAPINFOHEADER);
BmpInfoHdr.biWidth = nZoomWidth;
BmpInfoHdr.biHeight = nZoomHeight;
BmpInfoHdr.biPlanes = 1;
BmpInfoHdr.biBitCount = bitCount;
BmpInfoHdr.biCompression = BI_RGB;
BmpInfoHdr.biSizeImage = (nZoomWidth * bitCount + 31) / 32 * 4 * nZoomHeight;
BmpInfoHdr.biXPelsPerMeter = 0;
BmpInfoHdr.biYPelsPerMeter = 0;
BmpInfoHdr.b
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 91302 2016-01-16 17:16 inpaint\Debug\image.obj
文件 0 2016-01-16 17:16 inpaint\Debug\image.sbr
文件 21689 2016-01-16 20:25 inpaint\Debug\inpaint.obj
文件 0 2016-01-16 20:25 inpaint\Debug\inpaint.sbr
文件 3638272 2016-01-16 20:26 inpaint\Debug\inpainting.bsc
文件 348263 2016-01-16 20:26 inpaint\Debug\inpainting.exe
文件 480552 2016-01-16 20:26 inpaint\Debug\inpainting.ilk
文件 44632 2016-01-16 20:26 inpaint\Debug\inpainting.obj
文件 2112288 2016-01-16 17:16 inpaint\Debug\inpainting.pch
文件 852992 2016-01-16 20:26 inpaint\Debug\inpainting.pdb
文件 0 2016-01-16 20:26 inpaint\Debug\inpainting.sbr
文件 11122 2016-01-16 17:16 inpaint\Debug\stdafx.obj
文件 0 2016-01-16 17:16 inpaint\Debug\stdafx.sbr
文件 214016 2016-01-16 20:26 inpaint\Debug\vc60.idb
文件 135168 2016-01-16 20:25 inpaint\Debug\vc60.pdb
文件 42431 2016-01-16 17:00 inpaint\image.cpp
文件 5478 2005-03-23 16:59 inpaint\image.h
文件 255 2016-01-16 19:26 inpaint\inpaint.cpp
文件 199680 2005-12-01 01:56 inpaint\inpaint.ncb
文件 903 2005-11-13 16:02 inpaint\inpaint.sln
..A..H. 9728 2005-12-01 01:56 inpaint\inpaint.suo
文件 4073 2005-11-13 17:15 inpaint\inpaint.vcproj
文件 15457 2016-01-16 20:27 inpaint\inpainting.cpp
文件 3828 2016-01-15 20:59 inpaint\inpainting.dsp
文件 545 2007-10-28 19:53 inpaint\inpainting.dsw
文件 2211 2016-01-16 20:23 inpaint\inpainting.h
文件 91136 2016-01-16 20:28 inpaint\inpainting.ncb
文件 50688 2016-01-16 20:28 inpaint\inpainting.opt
文件 769 2016-01-16 20:26 inpaint\inpainting.plg
文件 562 2005-12-01 01:55 inpaint\ReadMe.txt
............此处省略10个文件信息
评论
共有 条评论