这里有一段截取屏幕的代码:
CDC dc,bmpdc;
int wid,hig;
dc.CreateDC("DISPLAY",NULL,NULL,NULL);
CBitmap bm;
wid = GetSystemMetrics(SM_CXSCREEN);
hig = GetSystemMetrics(SM_CYSCREEN);
bmpdc.CreateCompatibleDC(&dc);
bmpdc.SelectObject(&bm);
bmpdc.BitBlt(0,0,wid,hig,&dc,0,0,SRCCOPY);
CRect rect;
GetClientRect(&rect);
GetDC()->StretchBlt(0,0,rect.Width(),rect.Height(),&bmpdc,0,0,rect.Width(),rect.Height(),SRCCOPY);
请问这段代码中,CBitmap bm,bm是否已经存储了截取屏幕的图像了?如果我要对截取的屏幕进行像素点修改后再显示出来(比方说变成灰度图片),应该怎么做?是在CDC dc中操作,还是 CDC bmpdc中操作,还是CBitmap bm中操作在写入CDC?有点乱,看了很多天了,还是没搞清,请各位大神好好看下,小弟不胜感激~~
也感谢这位网友的解答,谢谢!
谢谢,请看私信
本回答被提问者采纳能不要复制么?我看到另一个帖子你这样回答。要的是真实的
在VC++中如何进行图像处理?
申请个二维或一维数组,把图像亮度值装进去。比如用:CBitmap::LoadBitmap 之类的函数,把硬盘中的文件读进数组。然后做各种图像处理。(二值化,过滤处理之类的)再显示或存盘。或者用一些现成的图像处理库。比如收费的(LeadTools),免费的(OpenCV)之类的。
关于用VC++做数字图像处理,如何调用已有的头文件和源文件?
第一步:新键一个工程 第二步:在工程的菜单栏中添加一个选项"阈制变化"(这你应该会吧~~)第三步:使用CLASS WIZARD为这个选项添加一个消息响应函数如"ONYUZHIBIANHUAN"默认在C**VIEW类里的 第四步:在这个消息响应函数中调用你的功能函数如VOID YUZHIBIANHUAN();第五步:程序开头加上#INCLUDE "*...
C++图片处理问题(高分50)
第一个问题很麻烦,因为一个BMP图包含的信息部仅仅是每个点的数据,还有很多bitmap格式信息,解决方法:首先你要确定你用什么环境,vc++6.0,2003,2005可用的办法不一样 然后,去网上搜一段写好了的函数或类来解决这个问题,他的实现方法如果你对bmp格式文件存储没有兴趣的话大可以不必关心,与图像处...
vc++近红外波段图像处理算法该从什么地方着手?
首先是读入和输出图像,VC++里面没有matlab那样简单的读入和输出图像的函数。用openCV可能会好一些,读入和输出图像比较简单。接下来找算法对图像进行预处理,让它符合你的处理要求,然后再进行图像处理。这个很难说,关键还要看你想对图像进行怎么样的处理。
VC++6.0 MFC进行图像处理,现在想要学习VC++数字图像处理的应用,不知如...
其实没那么难的,和普通的编程差不多,也是建立一个MFC工程即 文件--新建--MFCAppWizard(exe),第一步的时候选择多文档;还有有个地方要注意,因为一般要处理的图像可能比较大,所以在最后一步,你在选择view的种类时最好选择CScorllView。然后至于怎么编写,要实现什么样的功能,就要看你这个程序的...
这位大哥你好:我是在VC++环境下进行图片处理,处理一个齿轮,
l函数原型:int WINAPI icePub_imgToSingleBmp(char *strImgFilename,char *strBmpFilename,int thresholdValue)输入:strImgFilename 待处理图像文件名 strBmpFilename bmp图像名 thresholdValue 256级灰度值的阈值(函数会先将图像转换成灰度再根据thresholdValue做黑白2值化)输出:lVC连接Lib方式声明 __...
VisualC++数字图像处理的内容简介
《VisualC++数字图像处理》配合图像处理专业理论性书籍的内容,从程序设计角度介绍了各种图像处理技术的典型算法及在VC++环境下的代码实现,并通过典型案例的介绍将各种图像处理技术集成起来。
哪位有vc++数字图像处理的源代码??急用!!谢谢
*0.514+(unsigned char)(src->imageData+h*src->widthStep)[3*w]*0.350);} } } void Func_ShowWindow(){ cvNamedWindow("原图",0); \/\/CV库函数,窗口定义函数,定义窗口,用于下一步的显示 cvShowImage("原图",src); \/\/cv库函数,标题栏是“原图”,显示src所指向的图像 ...
寻求编程高手帮忙用VC++编一个简单的图像处理软件!!!
我现在也在做相关的程序,快做好了.如果要简单一点的 使用 picture 控件实现打开文件,放大缩小使用StretchBlt之类的位图相关的函数或者直接使用MoveWindow,灰度的话 我很偷懒,直接使用GetPixel函数 获取RGB值做运算 最后保存对话框里的图像就OK了。希望对你有帮助。
vc++怎么对avi文件进行单针采集,图像处理
下面的nNum就是帧数,如果想对任意帧解压就需要进一步学OPENCV了 \/\/ 定义帧 IplImage * pFrame = NULL;\/\/ 定义视频 CvCapture * capture = NULL;\/\/ 读取视频 capture = cvCreateFileCapture("d:\\\\3.avi");int nNum = 0;while(1){ \/\/ 帧数 nNum++;\/\/ 取当前帧数,并解包下一帧 pFrame ...