中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

企業(yè)信用網查詢網站優(yōu)化推廣培訓

企業(yè)信用網查詢,網站優(yōu)化推廣培訓,花都區(qū)pc端網站建設,flashfxp怎么做網站文章目錄 opencv鼠標事件函數(shù)setMouseCallback()詳解1、鼠標事件函數(shù):(1)鼠標事件函數(shù)原型:setMouseCallback(),此函數(shù)會在調用之后不斷查詢回調函數(shù)onMouse(),直到窗口銷毀(2)回調函…

文章目錄

        • opencv鼠標事件函數(shù)setMouseCallback()詳解
          • 1、鼠標事件函數(shù):
            • (1)鼠標事件函數(shù)原型:setMouseCallback(),此函數(shù)會在調用之后不斷查詢回調函數(shù)onMouse(),直到窗口銷毀
            • (2)回調函數(shù)onMouse(),可隨意命名,但是要與 setMouseCallback()函數(shù)里的回調函數(shù)名稱一致
          • 2、代碼示例:
            • (1)main.cpp
            • (2)頭文件demo.h
            • (3)demo.cpp
            • (4)效果演示

opencv鼠標事件函數(shù)setMouseCallback()詳解

1、鼠標事件函數(shù):
(1)鼠標事件函數(shù)原型:setMouseCallback(),此函數(shù)會在調用之后不斷查詢回調函數(shù)onMouse(),直到窗口銷毀
  void setMouseCallback(const String& winname, MouseCallback onMouse, void* userdata = 0
)參數(shù)解釋:winname:窗口名稱;onMouse:回調函數(shù);userdata:傳遞給回調函數(shù)用戶自定義的外部數(shù)據(jù),userdata是一個 void 類型的指針;
(2)回調函數(shù)onMouse(),可隨意命名,但是要與 setMouseCallback()函數(shù)里的回調函數(shù)名稱一致
void onMouse(int event, int x, int y, int flags, void *userdata
) 參數(shù)解釋:
event:表示鼠標事件類型的常量(#define CV_EVENT_MOUSEMOVE 0             //滑動#define CV_EVENT_LBUTTONDOWN 1           //左鍵點擊#define CV_EVENT_RBUTTONDOWN 2           //右鍵點擊#define CV_EVENT_MBUTTONDOWN 3           //中鍵點擊#define CV_EVENT_LBUTTONUP 4             //左鍵放開#define CV_EVENT_RBUTTONUP 5             //右鍵放開#define CV_EVENT_MBUTTONUP 6             //中鍵放開#define CV_EVENT_LBUTTONDBLCLK 7         //左鍵雙擊#define CV_EVENT_RBUTTONDBLCLK 8         //右鍵雙擊#define CV_EVENT_MBUTTONDBLCLK 9         //中鍵雙擊
);
x和y:鼠標指針在圖像坐標系的坐標;
flags:鼠標事件標志的常量;
userdata:回調函數(shù)接收,用戶自定義的外部數(shù)據(jù),userdata是一個 void 類型的指針;
2、代碼示例:

利用鼠標事件函數(shù),提取ROI區(qū)域:

(1)main.cpp
#include <opencv2\opencv.hpp>
#include <iostream>
#include <demo.h>using namespace cv;
using namespace std;int main() {//讀取圖像,BGR存儲在Mat矩陣里Mat src = cv::imread("C:\\cpp\\image\\suzy4.jpg");if (src.empty()) {printf("could not load image..../n");return -1;}Demo demo;demo.mouseEvent(src);waitKey();destroyAllWindows();return 0;
}
(2)頭文件demo.h
#include <opencv2/opencv.hpp>using namespace cv;class Demo
{
public:void mouseEvent(Mat &image);
private:};
(3)demo.cpp
#include <Demo.h>using namespace std;Point sp(-1, -1);
Point ep(-1, -1);
Mat temp;
static void onMouse(int event, int x, int y, int flags, void *userdata) {/*** 對指針userdata,進行轉換和解引用的操作,將userdata指向的Mat對象,賦值給名為image的變量,以便后續(xù)對圖像數(shù)據(jù)的處理:* userdata是一個void類型的指針,需要轉換為Mat類型的指針,然后用*運算符解引用,得到Mat對象,再賦值給名為image的變量,這樣就可以對image進行操作了;*/Mat image = *((Mat*)userdata);if (event == EVENT_LBUTTONDOWN) {// 起點坐標sp.x = x;sp.y = y;std::cout << "start point:" << sp << std::endl;}else if (event == EVENT_LBUTTONUP) {ep.x = x;ep.y = y;// 結束點坐標int dx = ep.x - sp.x;int dy = ep.y - sp.y;if (dx > 0 && dy > 0) {Rect box(sp.x, sp.y, dx, dy);temp.copyTo(image);imshow("ROI區(qū)域", image(box));rectangle(image, box, Scalar(0, 0, 255), 2, 8, 0);imshow("鼠標繪制", image);// ready for next drawingsp.x = -1;sp.y = -1;}}else if (event == EVENT_MOUSEMOVE) {if (sp.x > 0 && sp.y > 0) {ep.x = x;ep.y = y;int dx = ep.x - sp.x;int dy = ep.y - sp.y;if (dx > 0 && dy > 0) {Rect box(sp.x, sp.y, dx, dy);temp.copyTo(image);rectangle(image, box, Scalar(0, 0, 255), 2, 8, 0);imshow("鼠標繪制", image);}}}
}void Demo::mouseEvent(Mat &image) {namedWindow("鼠標事件", WINDOW_AUTOSIZE);/*** 由于回調函數(shù)需要傳入的是一個void類型指針,我們先取image的地址,再將&image強制轉換為void類型指針,具體操作如下:* &image:獲取變量image的內存地址,即Mat對象的指針;* (void*):是一個強制類型轉換,將image的地址轉換為void類型指針,這樣就可以將參數(shù)傳遞給回調函數(shù)了;*/setMouseCallback("鼠標繪制", onMouse, (void*)(&image));imshow("鼠標繪制", image);temp = image.clone();
}
(4)效果演示

在這里插入圖片描述

http://m.risenshineclean.com/news/46045.html

相關文章:

  • 建甌網站制作百度網站怎么提升排名
  • 自己做產品品牌網站谷歌官網網址
  • 杭州富陽區(qū)網站建設公司seo排名軟件有用嗎
  • 鄭州響應式網站建設如何找外包的銷售團隊
  • 網絡工作室頭像seo積分優(yōu)化
  • 用flash做的網站展示品牌策劃方案模板
  • 網站二級域名 權重 盧松松學seo網絡推廣
  • 國內醫(yī)療美容網站建設培訓機構不退費最有效方式
  • 電子書推送網站怎么做會計培訓班
  • 政府采購網站的建設情況bing收錄提交
  • 個人博客網站開發(fā)的原因鄭州seo排名優(yōu)化公司
  • flash 做ppt的模板下載網站北京seo招聘信息
  • wordpress 命令插件東莞seo靠譜
  • wap網站開發(fā)協(xié)議個人推廣網站
  • 做網站最主要是什么最新的新聞 最新消息
  • java網站開發(fā)步驟搜索引擎費用
  • html做電子書網站抖音關鍵詞搜索排名
  • 網站速度優(yōu)化工具關鍵詞排名
  • 怎么做淘寶鏈接網站開戶推廣競價開戶
  • 甘肅省建設部網站微信朋友圈軟文大全
  • 深圳做棋牌網站建設軟文推廣的優(yōu)點
  • 網站的做用seo引擎優(yōu)化專員
  • 中央廣播電視總臺央視頻在線直播百度seo教程視頻
  • 哈西建站優(yōu)化購物網站大全
  • 博彩導航網站可以做嗎創(chuàng)建網站需要多少資金
  • 中國城鄉(xiāng)建設部網站證書查詢網站關鍵詞排名快速提升
  • 網站建設過程論文網站收錄查詢
  • wordpress不能啟動怎么解決方法seo中文意思
  • 做公司網站首頁seo網站診斷顧問
  • 怎么看網站是什么程序做的搜索引擎優(yōu)化seo專員招聘