亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ugraphics.cpp

?? 微軟的基于HMM的人臉識別原代碼, 非常經典的說
?? CPP
字號:
/*M///////////////////////////////////////////////////////////////////////////////////////
//
//  IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
//
//  By downloading, copying, installing or using the software you agree to this license.
//  If you do not agree to this license, do not download, install,
//  copy or use the software.
//
//
//                        Intel License Agreement
//                For Open Source Computer Vision Library
//
// Copyright (C) 2000, Intel Corporation, all rights reserved.
// Third party copyrights are property of their respective owners.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
//   * Redistribution's of source code must retain the above copyright notice,
//     this list of conditions and the following disclaimer.
//
//   * Redistribution's in binary form must reproduce the above copyright notice,
//     this list of conditions and the following disclaimer in the documentation
//     and/or other materials provided with the distribution.
//
//   * The name of Intel Corporation may not be used to endorse or promote products
//     derived from this software without specific prior written permission.
//
// This software is provided by the copyright holders and contributors "as is" and
// any express or implied warranties, including, but not limited to, the implied
// warranties of merchantability and fitness for a particular purpose are disclaimed.
// In no event shall the Intel Corporation or contributors be liable for any direct,
// indirect, incidental, special, exemplary, or consequential damages
// (including, but not limited to, procurement of substitute goods or services;
// loss of use, data, or profits; or business interruption) however caused
// and on any theory of liability, whether in contract, strict liability,
// or tort (including negligence or otherwise) arising in any way out of
// the use of this software, even if advised of the possibility of such damage.
//
//M*/

#ifdef WIN32

#pragma warning( disable: 4115 )

#include <windows.h>
#include "CvTest.h"
#include <math.h>
#include <assert.h>

static const char* ATS_WND_CLASS = "ATS_Window_Class";


static LRESULT CALLBACK AtsWindowProc(
  HWND hwnd,      /* handle to window */
  UINT uMsg,      /* message identifier */
  WPARAM wParam,  /* first message parameter */
  LPARAM lParam   /* second message parameter */
)
{
    return DefWindowProc( hwnd, uMsg, wParam, lParam );
}



int atsCreateWindow( const char* name, CvPoint wnd_org, CvSize wnd_size )
{
    WNDCLASS wcl;

    wcl.style = CS_NOCLOSE;
    wcl.lpfnWndProc = AtsWindowProc;
    wcl.cbClsExtra = wcl.cbWndExtra = 0;
    wcl.hInstance = GetModuleHandle(0);
    wcl.hIcon = (HICON)LoadImage( 0, (LPCTSTR)IDI_WINLOGO, IMAGE_ICON, 0, 0, LR_DEFAULTSIZE );
    wcl.hCursor = (HICON)LoadImage( 0, (LPCTSTR)IDC_CROSS, IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE );
    wcl.hbrBackground = (HBRUSH)GetStockObject( BLACK_BRUSH );
    wcl.lpszMenuName = 0;
    wcl.lpszClassName = ATS_WND_CLASS;

    RegisterClass( &wcl );

    return  (int)CreateWindow(
        wcl.lpszClassName, name,
        WS_POPUP | WS_CAPTION | WS_VISIBLE,
        wnd_org.x, wnd_org.y, wnd_size.width, wnd_size.height,
        0, 0, wcl.hInstance, 0 );
}


/* displays (8u/8s)C1/C3/AC4 image */
void  atsDisplayImage( IplImage* img, int window, CvPoint dst_org, CvSize dst_size )
{
    uchar storage[sizeof(BITMAPINFOHEADER) + 256*4];
    BITMAPINFOHEADER*  bmih = (BITMAPINFOHEADER*)storage;

    char* src_data = 0;
    char* dst_data = 0;
    CvSize src_size;
    int   src_step = 0;
    int   channels = 0, depth = 0, bt_pix = 0;
    HBITMAP hbmp = 0;
    HDC     hdc = 0, dstdc = 0;

    atsGetImageInfo( img, (void**)&src_data, &src_step, &src_size, &depth, &channels, &bt_pix );

    assert( depth == IPL_DEPTH_8U || depth == IPL_DEPTH_8S );
    assert( channels == 1 || channels == 3 || channels == 4 );

    bmih->biSize = sizeof(*bmih);
    bmih->biWidth = src_size.width;
    bmih->biHeight = -src_size.height;
    bmih->biPlanes = 1;
    bmih->biBitCount = (unsigned short)(bt_pix*8);
    bmih->biCompression = BI_RGB;
    bmih->biSizeImage = 0;
    bmih->biXPelsPerMeter = 0;
    bmih->biYPelsPerMeter = 0;
    bmih->biClrUsed = 0;
    bmih->biClrImportant = 0;

    if( channels == 1 )
    {
        int i, delta = (depth == IPL_DEPTH_8S)*128;
        RGBQUAD* palette = (RGBQUAD*)(storage + sizeof(BITMAPINFOHEADER));

        for( i = 0; i < 256; i++ )
            palette[i].rgbBlue = palette[i].rgbRed =
            palette[i].rgbGreen = (uchar)(i + delta);
    }

    hdc = CreateCompatibleDC(0);
    hbmp = CreateDIBSection( hdc, (BITMAPINFO*)bmih, DIB_RGB_COLORS, (void**)&dst_data, 0, 0 );

    dstdc = GetDC( (HWND)window );

    if( hbmp && dstdc )
    {
        HGDIOBJ hold = SelectObject( hdc, hbmp );
        int  dst_step = (src_size.width*bt_pix + 3) & -4;
        int  y;

        /* convert source image to RGB24 */
        for( y = 0; y < src_size.height; y++, src_data += src_step, dst_data += dst_step )
        {
            memcpy( dst_data, src_data, dst_step );
        }
#if 0
        if( depth == IPL_DEPTH_8U ) /* 8u */
        {
            switch( channels )
            {
            case 1:
                for( x = 0; x < src_size.width; x++ )
                {
                    dst_data[x*3] = dst_data[x*3+1] =
                        dst_data[x*3+2] = ((uchar*)src_data)[x];
                }
                break;
            case 3:
                memcpy( dst_data, src_data, src_size.width*3 );
                break;
            default: /* 4 */
                for( x = 0; x < src_size.width; x++ )
                {
                    dst_data[x*3] = ((uchar*)src_data)[x*4];
                    dst_data[x*3 + 1] = ((uchar*)src_data)[x*4 + 1];
                    dst_data[x*3 + 2] = ((uchar*)src_data)[x*4 + 2];
                }
                break;
            }
        }
        else /* 8s */
        {
            switch( channels )
            {
            case 1:
                for( x = 0; x < src_size.width; x++ )
                {
                    dst_data[x*3] = dst_data[x*3+1] =
                        dst_data[x*3+2] = ((uchar*)src_data)[x];
                }
                break;
            case 3:
                memcpy( dst_data, src_data, src_size.width*3 );
                break;
            default: /* 4 */
                for( x = 0; x < src_size.width; x++ )
                {
                    dst_data[x*3] = ((uchar*)src_data)[x*4];
                    dst_data[x*3 + 1] = ((uchar*)src_data)[x*4 + 1];
                    dst_data[x*3 + 2] = ((uchar*)src_data)[x*4 + 2];
                }
                break;
            }
        }
#endif

        SetStretchBltMode( dstdc, COLORONCOLOR );
        StretchBlt( dstdc, dst_org.x, dst_org.y, dst_size.width, dst_size.height,
                    hdc, 0, 0, src_size.width, src_size.height, SRCCOPY );
        SelectObject( hdc, hold );
    }

    if( hbmp ) DeleteObject( hbmp );
    if( hdc ) DeleteDC( hdc );
    if( dstdc ) ReleaseDC( (HWND)window, dstdc );
}


void  atsDestroyWindow( int window )
{
    DestroyWindow( (HWND)window );
}

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品国产无天堂网2021| 国产91综合网| 国产原创一区二区| 欧美在线免费观看视频| 久久久久国产精品人| 日韩精品乱码免费| 色婷婷国产精品综合在线观看| 久久女同精品一区二区| 日韩中文字幕av电影| 91免费观看视频在线| 久久精品亚洲麻豆av一区二区 | 成人免费av网站| 日韩一区二区三| 狠狠色丁香九九婷婷综合五月| 亚洲精品国产无天堂网2021| 国产剧情一区二区| 日韩一区二区三区免费看| 亚洲第一在线综合网站| 色天天综合色天天久久| 中文字幕一区二区5566日韩| 国产综合久久久久久鬼色| 日韩小视频在线观看专区| 无码av免费一区二区三区试看| 91视频观看免费| 亚洲日韩欧美一区二区在线| 成人黄色大片在线观看| 国产精品美女一区二区三区 | 国产一区二区三区在线观看免费 | 国产精品中文字幕日韩精品 | 国产精品天美传媒| 久久精品久久99精品久久| 欧美色综合网站| 亚洲综合在线第一页| 91视频.com| 自拍偷拍亚洲综合| 在线观看日韩国产| 亚洲福利一区二区| 91精品国产黑色紧身裤美女| 肉丝袜脚交视频一区二区| 欧美日韩国产美| 丝袜诱惑亚洲看片| 日韩精品一区二区三区视频| 精品一区二区日韩| 久久精品夜色噜噜亚洲aⅴ| 成人一区在线看| 首页综合国产亚洲丝袜| |精品福利一区二区三区| jizz一区二区| 夜夜嗨av一区二区三区| 欧美日韩日本视频| 国内精品第一页| 国产欧美一区二区在线观看| 成熟亚洲日本毛茸茸凸凹| 中文字幕色av一区二区三区| 色94色欧美sute亚洲线路二| 日韩高清在线一区| 精品免费日韩av| thepron国产精品| 亚洲风情在线资源站| 26uuu欧美| 色综合婷婷久久| 日韩成人精品在线观看| 久久精品一区蜜桃臀影院| 色综合久久久久综合| 久久精品国产一区二区| 国产精品乱码妇女bbbb| 在线观看亚洲精品视频| 国产乱人伦偷精品视频不卡| 懂色av中文字幕一区二区三区| 91国模大尺度私拍在线视频| 免费在线观看一区二区三区| 欧美精彩视频一区二区三区| 色嗨嗨av一区二区三区| 美女网站色91| 亚洲欧美经典视频| 久久久影视传媒| 欧美日韩国产成人在线免费| 国产不卡视频在线观看| 亚洲成人一二三| 中文在线资源观看网站视频免费不卡 | 一区在线播放视频| 精品国产一区二区三区av性色| 国产999精品久久| 免费观看在线综合色| 亚洲青青青在线视频| 久久综合九色综合97婷婷女人 | 成人小视频在线| 亚洲综合网站在线观看| 国产网红主播福利一区二区| 在线视频欧美区| 国产·精品毛片| 久久精品72免费观看| 亚洲不卡一区二区三区| 亚洲人成在线观看一区二区| 国产亚洲一区二区三区在线观看| 制服丝袜亚洲精品中文字幕| 在线看不卡av| 一本色道久久综合亚洲aⅴ蜜桃| 国产成人亚洲综合a∨婷婷| 日韩精品一二区| 五月婷婷久久丁香| 亚洲宅男天堂在线观看无病毒| 国产精品三级av在线播放| 久久嫩草精品久久久精品一| 精品少妇一区二区三区视频免付费 | 91精品国产福利| 91视频观看视频| 成人黄色在线网站| 国产福利精品一区二区| 九九精品一区二区| 久久国产精品露脸对白| 美国av一区二区| 美女一区二区三区| 美女任你摸久久| 极品少妇xxxx精品少妇偷拍| 麻豆免费精品视频| 另类成人小视频在线| 精品一区二区三区在线观看| 看电视剧不卡顿的网站| 国产麻豆欧美日韩一区| 国产999精品久久久久久绿帽| 国产精品1024久久| 成人三级伦理片| 99re这里都是精品| 91高清在线观看| 在线不卡a资源高清| 日韩区在线观看| 久久影视一区二区| 国产精品久久久久久久久免费相片| 日韩伦理av电影| 亚洲福利视频一区二区| 麻豆91在线看| 成人夜色视频网站在线观看| jlzzjlzz国产精品久久| 欧美亚洲综合在线| 日韩色视频在线观看| 国产视频视频一区| 亚洲精品乱码久久久久| 日韩精品久久理论片| 国内成+人亚洲+欧美+综合在线| 成人免费黄色大片| 色婷婷激情一区二区三区| 欧美一区二区三区爱爱| 欧美激情在线看| 五月天一区二区| 东方欧美亚洲色图在线| 欧美人体做爰大胆视频| 久久久久99精品国产片| 一区二区三区精品视频| 麻豆精品蜜桃视频网站| av一区二区三区在线| 这里只有精品免费| 国产精品剧情在线亚洲| 欧美a级一区二区| 99国产精品一区| 精品国产91久久久久久久妲己 | 欧美日本在线视频| 久久色在线观看| 午夜婷婷国产麻豆精品| 成人午夜激情在线| 欧美一区永久视频免费观看| 中文字幕在线观看不卡视频| 青青草国产精品亚洲专区无| aaa亚洲精品| 欧美不卡一区二区三区四区| 一区二区三区在线影院| 国产乱人伦偷精品视频不卡| 制服丝袜激情欧洲亚洲| 樱花草国产18久久久久| 激情久久久久久久久久久久久久久久| 日本乱码高清不卡字幕| 中文一区二区完整视频在线观看| 青青草国产成人av片免费| 色老综合老女人久久久| 国产精品久久久久永久免费观看 | 成人午夜免费电影| 日韩欧美成人激情| 一区二区三区在线观看视频| 国产成人在线免费| 26uuu国产日韩综合| 日产欧产美韩系列久久99| 在线观看日韩电影| 日韩一区欧美一区| 丁香一区二区三区| 久久久精品一品道一区| 精品夜夜嗨av一区二区三区| 欧美一区二区三区在线视频| 亚洲一区二区三区四区的| caoporm超碰国产精品| 国产日产精品1区| 国产精品自拍三区| 国产日韩三级在线| 国产高清精品在线| 国产亚洲美州欧州综合国| 国产一区二区三区美女| 欧美一区二区不卡视频| 蜜桃一区二区三区在线观看| 日韩欧美美女一区二区三区| 日韩成人午夜精品| 日韩无一区二区|