这一阵一直在做海康威视的摄像头的调试工作,根据官方给的Demo,这里做了一些修改,删掉了云台的功能,添加了显示抓取图片的模块,这里话不多说,先上程序运行结果:

如果你需要的是这样的程序,那么你可以下载下来看一看,Demo是基于VS2013(X86 的SDK)开发的,加载了海康威视最新的SDK,为了防止SDK版本原因造成程序运行的问题,这里我也把我程序里使用的海康威视的SDK放出来,供大家参考:

程序下载地址

程序中使用的SDK的下载地址

程序中使用的库文件的下载地址(如果你仅仅需要导入库文件,下载这个就可以了)

好了,话不多说,具体的程序各位可以下载下来看,程序主体用的是海康威视的SDK中的MFC的Demo,然后这里仅仅说一下程序的配置以及后面添加的显示抓图的核心代码:

配置文件这里可以参考我之前的一篇博文:

海康威视网络摄像头SDK中Demo的运行(二次开发)

这里大家仅仅需要执行导入文件的那部分内容就可以了,至于官方Demo中的那个问题,我已经在上传的程序中进行了修正

然后附上抓图显示的核心代码:

void CRealPlayDlg::OnButtonCapture()
{if (m_lPlayHandle == -1){MessageBox("请先选择一个通道播放");return;}UpdateData(TRUE);char PicName[256] = { 0 };int iPicType = m_coPicType.GetCurSel();if (0 == iPicType)  //bmp{CTime CurTime = CTime::GetCurrentTime();;sprintf(PicName, "%04d%02d%02d%02d%02d%02d_ch%02d.bmp", CurTime.GetYear(), CurTime.GetMonth(), CurTime.GetDay(), \CurTime.GetHour(), CurTime.GetMinute(), CurTime.GetSecond(), m_struDeviceInfo.struChanInfo[GetCurChanIndex()].iChanIndex);if (NET_DVR_CapturePicture(m_lPlayHandle, PicName)){MessageBox("抓图成功!");CString PIC = PicName;CImage  image;int cx, cy;CRect   rect;//根据路径载入图片    //char strPicPath[] = PicName;image.Load(PIC);//获取图片的宽 高  cx = image.GetWidth();cy = image.GetHeight();CWnd *pWnd = NULL;pWnd = GetDlgItem(IDC_IMG);//获取控件句柄  //获取Picture Control控件的客户区  pWnd->GetClientRect(&rect);CDC *pDc = NULL;pDc = pWnd->GetDC();//获取picture control的DC    //设置指定设备环境中的位图拉伸模式  int ModeOld = SetStretchBltMode(pDc->m_hDC, STRETCH_HALFTONE);//从源矩形中复制一个位图到目标矩形,按目标设备设置的模式进行图像的拉伸或压缩  image.StretchBlt(pDc->m_hDC, rect, SRCCOPY);SetStretchBltMode(pDc->m_hDC, ModeOld);ReleaseDC(pDc);}}else if (1 == iPicType)  //jgp{CTime CurTime = CTime::GetCurrentTime();;sprintf(PicName, "%04d%02d%02d%02d%02d%02d_ch%02d.jpg", CurTime.GetYear(), CurTime.GetMonth(), CurTime.GetDay(), \CurTime.GetHour(), CurTime.GetMinute(), CurTime.GetSecond(), m_struDeviceInfo.struChanInfo[GetCurChanIndex()].iChanIndex);//组建jpg结构NET_DVR_JPEGPARA JpgPara = { 0 };JpgPara.wPicSize = (WORD)m_coJpgSize.GetCurSel();JpgPara.wPicQuality = (WORD)m_coJpgQuality.GetCurSel();LONG iCurChan = m_struDeviceInfo.struChanInfo[GetCurChanIndex()].iChanIndex;if (NET_DVR_CaptureJPEGPicture(m_struDeviceInfo.lLoginID, iCurChan, &JpgPara, PicName)){MessageBox("抓图成功");CString PIC = PicName;CImage  image;int cx, cy;CRect   rect;//根据路径载入图片    //char strPicPath[] = PicName;image.Load(PIC);//获取图片的宽 高  cx = image.GetWidth();cy = image.GetHeight();CWnd *pWnd = NULL;pWnd = GetDlgItem(IDC_IMG);//获取控件句柄  //获取Picture Control控件的客户区  pWnd->GetClientRect(&rect);CDC *pDc = NULL;pDc = pWnd->GetDC();//获取picture control的DC    //设置指定设备环境中的位图拉伸模式  int ModeOld = SetStretchBltMode(pDc->m_hDC, STRETCH_HALFTONE);//从源矩形中复制一个位图到目标矩形,按目标设备设置的模式进行图像的拉伸或压缩  image.StretchBlt(pDc->m_hDC, rect, SRCCOPY);SetStretchBltMode(pDc->m_hDC, ModeOld);ReleaseDC(pDc);}}return;
}

基于MFC海康威视摄像头Demo(含抓图显示|不含云台)相关推荐

  1. 基于MFC的汽车修理管理系统设计与实现(含源文件)

    欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 汽车修理管理系统 一.     概述 1.项目背景 在计算机不断发展的今天,计算机已经运用到各个 ...

  2. 基于FPGA的数码管动态扫描显示(含代码)

    数码管的显示有静态显示和动态扫描显示.一个数码管通常有8个段码,当要控制数码管的数量在两个及以上时,动态扫描无疑是一个最好的选择,可以大量节约IO资源. 静态显示很好理解,8个段码拼成了数字8.,当我 ...

  3. 【javaCV基于虹软人脸识别demo添加电脑摄像头人脸识别(图片保存,视频保存,摄像头显示等 )(附源码)】

    javaCV基于虹软人脸识别demo添加电脑摄像头人脸识别(图片保存,视频保存,摄像头显示等 )(附源码) 文章目录 javaCV基于虹软人脸识别demo添加电脑摄像头人脸识别(图片保存,视频保存,摄 ...

  4. 基于opencv和mfc的摄像头采集代码(GOMFCTemplate2)持续更新

            编写带界面的图像处理程序,选择opencv+mfc是一种很好的选择:在读取摄像头数据方面,网上的方法很多,其中shiqiyu的camerads的方法是较好的.       基于现有资料 ...

  5. (原创)基于ZedBoard的Webcam设计(二):USB摄像头图片采集+QT显示

    在(原创基于ZedBoard的Webcam设计(一):Zedboard上的USB摄像头(V4L2接口)的图片采集中,我们完成了ZedBoard上USB摄像头的单幅图片采集,采集到的图片是存储在文件系统 ...

  6. 读取海康威视摄像头实时显示视频流

    提示:文章用于学习记录 文章目录 前言 一.设置同一网段 二.密码重置 三.VLC 读取视频流 四.opencv 读取视频流 总结 前言 摄像头一般有网线和电源线两个接口,如下图所示, 用网线将摄像头 ...

  7. 基于ZedBoard的Webcam设计(二):USB摄像头图片采集+QT显示

    在(原创基于ZedBoard的Webcam设计(一):Zedboard上的USB摄像头(V4L2接口)的图片采集中,我们完成了ZedBoard上USB摄像头的单幅图片采集,采集到的图片是存储在文件系统 ...

  8. vs2015+opencv3.2+mfc读取摄像头显示在图片控件Picture Control

    vs2015 + opencv3.3 + mfc读取摄像头显示在图片控件Picture Control 要开始做一个行人检测的小项目,首先读取出摄像头显示,参考了这位博主的教程:http : //bl ...

  9. 海康威视设备在Web端显示实时(回放)视频

    前言 目前做的项目,需要Web端显示实时视频数据.本次项目使用的是海康威视的摄像头进行实时监控. 硬件:海康威视的摄像头 软件:video.js.nginx.vlc 参考:https://blog.c ...

最新文章

  1. HarmonyOS Unknown HarmonyOS XML attribute
  2. DIV+CSS规范命名大全集合
  3. 实用 | 宝藏男孩教你如何魔改 Grafana 主题!
  4. python 之模块引入
  5. 软考-信息系统项目管理师-项目成本管理
  6. 简短介绍_中秋节的来历由来简短20字30字 中秋节的起源50字100字简介
  7. 将房子卖了五百万,存在银行,靠利息能过日子吗?
  8. Android BroadcastReceiver(二)
  9. Acrobat Pro DC 教程,如何拆分PDF文件?
  10. 【激光雷达3D】【论文翻译】Complex-YOLO: An Euler-Region-Proposal for Real-time 3D Object Detection on Point
  11. Keil MDK浮点数支持不正常的解决方案
  12. VSS2005使支持通过Internet访问
  13. 香农编码译码c语言,实验三香农编码.doc
  14. Word删除与新增页眉或页脚的横线
  15. KeilC51使用详解 (三)
  16. 量土地用计算机,土地面积换算(土地面积计算器)
  17. CH6803 导弹防御塔
  18. 记一次WH-1000XM3翻车经历
  19. 编写程序获取 vector 容器的第一个元素。分别使用下标 操作符、front 函数以及 begin 函数实现该功能,并提 供空的 vector 容器测试你的程序
  20. 【c语言】有符号机器数之间怎么比较大小?

热门文章

  1. 在注册表中设置修改默认浏览器
  2. [创业-37]:公司的组织架构--所有者与决策机构(股东)
  3. 二分图——骑士放置(最大独立集)
  4. keyshot手机渲染教程_Rhino+Keyshot-黑鲨手机建模渲染
  5. Halcon--差异模型完整性检测
  6. access IIf 函数
  7. GitHub强势开源,这个神器,支持12个视频片源、高清无码、能下载、全平台 !!...
  8. Web安全:X-XSS-Protection头(防XSS攻击设置)
  9. apache 替换https证书不生效_apache 更换ssl证书
  10. HDU 4507 吉哥系列故事――恨7不成妻 (平方拆解 + *数位DP 总结)