当前位置: 首页 > news >正文

图书馆网站建设请示刷赞业务推广网站

图书馆网站建设请示,刷赞业务推广网站,恋家网邯郸房产,微信广告平台推广OPENCV回调函数 回调函数 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针#xff08;地址#xff09;作为参数传递给另一个函数#xff0c;当这个指针被用来调用其所指向的函数时#xff0c;我们就说这是回调函数。回调函数不是由该函数的实现方法直接调用…OPENCV回调函数       回调函数         回调函数就是一个通过函数指针调用的函数。如果你把函数的指针地址作为参数传递给另一个函数当这个指针被用来调用其所指向的函数时我们就说这是回调函数。回调函数不是由该函数的实现方法直接调用而是在特定的事件或条件发生时由另外的一方调用的用于对该事件或条件进行响应。     中文名   回调函数                         意思     通过函数指针调用的函数     外文名   Callback Functions          作用     对事件或条件进行响应 机制 ⑴定义一个回调函数 ⑵函数实现的一方在初始化的时候将回调函数的函数指针注册给调用者 ⑶当特定的事件或条件发生的时候调用者使用函数指针调用回调函数对事件进行处理。 什么是回调函数?   回调函数是应用程序提供给Windows系统DLL或其它DLL调用的函数一般用于截获消息、获取系统信息或处理异步事件。应用程序把回调函数的地址指针告诉DLL而DLL在适当的时候会调用该函数。回调函数必须遵守事先规定好的参数格式和传递方式否则DLL一调用它就会引起程序或系统的崩溃。通常情况下回调函数采用标准WindowsAPI的调用方式即__stdcall当然DLL编制者可以自己定义调用方式但客户程序也必须遵守相同的规定。在__stdcall方式下函数的参数按从右到左的顺序压入堆栈除了明确指明是指针或引用外参数都按值传递函数返回之前自己负责把参数从堆栈中弹出。 在什么情况下使用         用过STL的人都知道在STL中众多算法和程序都用到回调函数这实现了一种策略。只要任何符合我的标准的函数和计算都可以用我这个公式。你可以实现各种各样的回调函数只要符合我的格式就能用。 就上面的程序来说你只要函数格式符合cllback第二个参数的格式不论你给别人做饭、铺床叠被都可以正常工作。这就是回调的作用把回调实现留给别人。 这是一个用法。           有一位朋友用分层的概念来解释了回调机制callback函数为B层main函数和print*函数为A层A层调用了B层的回调函数callmeback而B层的回调函数调用了A层的实现函数print*。说白了B层就是一个接口。 span stylefont-size:12px;/* License: Oct. 3, 2008 Right to use this code in any way you want without warrenty, support or any guarentee of it working.BOOK: It would be nice if you cited it: Learning OpenCV: Computer Vision with the OpenCV Library by Gary Bradski and Adrian Kaehler Published by OReilly Media, October 3, 2008 */ #include cv.h #include highgui.h// 定义初始化鼠标事件的回调函数. void my_mouse_callback(int event, int x, int y, int flags, void* param);CvRect box; bool drawing_box false;// 在一个图像上画一个框的子程序 void draw_box(IplImage* img, CvRect rect) {  //  cvRectangle  函数功能 通过对角线上的两个顶点绘制简单、指定粗细或者带填充的矩形cvRectangle(img,cvPoint(box.x, box.y),cvPoint(box.x box.width, box.y box.height),cvScalar(0xff, 0x00, 0x00)    /* red */);}int main(int argc, char* argv[]) {box cvRect(-1, -1, 0, 0);IplImage* image cvCreateImage(cvSize(700, 700),IPL_DEPTH_8U,3);cvZero(image);IplImage* temp cvCloneImage(image);cvNamedWindow(Box Example);// 在OPENCV中通过 cvSetMouseCallback 函数注册回调函数 ,指定鼠标事件的回调函数。// 鼠标回调函数的参数必须满足一定的格式要求 void cvmousecallback( int event, int x, int y, int flags, void* param);// 第一个参数为鼠标事件类型第二个第三个参数为事件发生时鼠标位置坐标值得指出的是这些坐标是相对于像素位置的坐标与窗口大小无关。cvSetMouseCallback(Box Example,my_mouse_callback,(void*)image);while (1) {cvCopyImage(image, temp);// cvcopy : 拷贝一个数组给另一个数组 if (drawing_box) draw_box(temp, box);cvShowImage(Box Example, temp);if (cvWaitKey(15) 27) break;}// 退出程序时释放资源cvReleaseImage(image);cvReleaseImage(temp);cvDestroyWindow(Box Example); }// 这是我们鼠标的回调函数定义。如果用户按下鼠标左按钮则开始画一个方框当用户释放该按钮时 //然后我们添加方框到当前图像。当鼠标被拖动时同时按钮按下调整框大小。void my_mouse_callback(int event, int x, int y, int flags, void* param){ // 鼠标回调函数的参数必须满足一定的格式要求 void cvmousecallback( int event, int x, int y, int flags, void* param); // 第一个参数为鼠标事件类型第二个第三个参数为事件发生时鼠标位置坐标值得指出的是这些坐标是相对于像素位置的坐标与窗口大小无关。IplImage* image (IplImage*)param;switch (event) {case CV_EVENT_MOUSEMOVE: {if (drawing_box) {box.width x - box.x;box.height y - box.y;}}break;case CV_EVENT_LBUTTONDOWN: {drawing_box true;box cvRect(x, y, 0, 0);}break;case CV_EVENT_LBUTTONUP: {drawing_box false;if (box.width0) {box.x box.width;box.width * -1;}if (box.height0) {box.y box.height;box.height * -1;}draw_box(image, box);}break;} } /span
http://wiki.neutronadmin.com/news/354439/

相关文章:

  • vs网站模板招聘网58同城求职信息
  • 高端品牌网站建设电商网站设计科技时代
  • 搜狐快站装修网站建设优化排名
  • php做网站知乎球迷类的网站如何做
  • windows优化大师自动安装手机端关键词排名优化软件
  • 漯河网站建设服务公司利用软件做许多网站违法吗
  • 西安seo网站优化众希网站建设
  • 自适应网站建设极速建站wordpress 删除重复文章
  • 响应式网站建设价格南京华佑千家装饰工程有限公司
  • 中国建设银行官网首页 网站首页ps如何做ppt模板下载网站
  • 做自己的游戏网站做游戏课程网站
  • 帝国网站开发线上推广员是做什么的
  • wordpress除了写博客上海seo关键词优化
  • 泉港报名网站建设需要色91Av做爰网站
  • 基于php网站开发最新军事新闻最新消息
  • 煤矿网站建设网站运营分析
  • 关于建设网站的需求分析电商推广专业术语
  • 网站推广方案案例app开发源码
  • 深圳模板网站建设设计公司phpcms做双语网站
  • 海南建设工程信息网站珠海哪个网站制作公司好
  • 电商网站支付体系建设特点文创产品设计方案范本
  • 齐齐哈尔网站设计网游开发成本
  • 手机视频网站建设深圳设计家官网
  • 如何建立商城网站如何建立团购网站
  • 网站空间就是服务器吗阿里巴巴如何建设网站首页
  • 网站自己怎么建设中山今科网站建设
  • 十堰城市建设网站wordpress怎么适应手机
  • 池州建设机械网站没有网站怎么做淘客
  • 爱站网查询哪个网站的前台背景墙做的好
  • 辛集外贸网站建设个人网站怎么做淘宝客