zoukankan      html  css  js  c++  java
  • MFC HTML的img显示摄像头图像

        cv::VideoCapture vc;
    	vc.open(0);
    	cv::Mat temp;
    	vc.read(temp);
    	//cv::resize(temp,temp,cv::Size(320,240));
    	
    	vector<uchar> buff; 
    	cv::imencode(".bmp" ,temp ,buff); 
    	vc.release();
    	uchar* dest=new uchar[buff.size()*2];
    
    	uchar* bb=(uchar*)&buff[0];
    	int len=buff.size();
    	Base64Encode(dest,bb,len);
    	CString b64=(char*)dest;
    	CString szText="data:image/bmp;base64,"+b64;
    	HRESULT hr = NULL;
    	IHTMLElement* psrcElement;
    	VARIANT value;
    	hr = GetElement("bg", &psrcElement );
    	if( SUCCEEDED( hr ))
    	{
    		value.bstrVal=szText.AllocSysString();//(BSTR)L"file:///c:/f.jpg";
    		value.vt=VT_BSTR;
    		hr = psrcElement->setAttribute( L"src",value );
    
    	}
    	delete[ ] dest;    
    

      

    static const char g_sas8Base64digits[] =
    	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
    
    
    //编码
    void Base64Encode(uchar *ps8Dest, const uchar *ps8Source, int s32InLen)
    {
    	if (ps8Dest==NULL || ps8Source==NULL || s32InLen<=0)
    	{
    		return;
    	}
    
    	for (; s32InLen >= 3; s32InLen -= 3)
    	{
    		*ps8Dest++ = g_sas8Base64digits[ps8Source[0] >> 2];
    		*ps8Dest++ = g_sas8Base64digits[((ps8Source[0] << 4) & 0x30) | (ps8Source[1] >> 4)];
    		*ps8Dest++ = g_sas8Base64digits[((ps8Source[1] << 2) & 0x3c) | (ps8Source[2] >> 6)];
    		*ps8Dest++ = g_sas8Base64digits[ps8Source[2] & 0x3f];
    		ps8Source += 3;
    	}
    
    	if (s32InLen > 0)
    	{
    		unsigned char fragment;
    
    		*ps8Dest++ = g_sas8Base64digits[ps8Source[0] >> 2];
    		fragment = (ps8Source[0] << 4) & 0x30;
    
    		if (s32InLen > 1)
    			fragment |= ps8Source[1] >> 4;
    
    		*ps8Dest++ = g_sas8Base64digits[fragment];
    		*ps8Dest++ = (s32InLen < 2) ? '=' : g_sas8Base64digits[(ps8Source[1] << 2) & 0x3c];
    		*ps8Dest++ = '=';
    	}
    
    	*ps8Dest = '';
    }
    

      

  • 相关阅读:
    docker容器升级脚本
    Haproxy状态监控配置教程
    负载均衡之Haproxy配置详解(及httpd配置)
    升级代码脚本
    升级数据库脚本(加入事务)
    监控端口,新疆模拟用户登录脚本
    mongodb3.2系统性学习——3、update()操作
    Java Socket编程
    php错误级别设置
    php 用于绘图使用的颜色数组
  • 原文地址:https://www.cnblogs.com/ahuo/p/3363490.html
Copyright © 2011-2022 走看看