opencv-滑动条createTrackbar
//IDE:VS2019 #include<opencv2/opencv.hpp> #include<iostream> void onChangeTrackBar(int pos, void* usrdata) { // 强制类型转换 cv::Mat src = *(cv::Mat*)(usrdata); cv::Mat dst; cv::threshold(src, dst, pos, 255, 0); cv::imshow("滑动条", dst); } int main(int argc, char** argv) { cv::Mat img = cv::imread("D:/bb/tu1/laohu.jpg", 0); //读入图像,以灰度图形式读入 cv::namedWindow("滑动条"); cv::imshow("滑动条", img); int posTrackBar = 0; //用来保存滑块位置 cv::createTrackbar("pos", "滑动条", &posTrackBar, 255, onChangeTrackBar, &img); //第一个参数:conststring& trackbarname,轨迹条的名字,用来表示创建的轨迹条 //第二个参数:conststring& winname,窗口的名字,表示这个轨迹条会依附到哪个窗口上 //第三个参数:int* value,一个指向整形的指针,用来保存滑块的位置。创建时,滑块的初始位置就是该变量当前的值 //第四个参数:int count,表示滑块可以达到的最大位置的值。滑块最小位置的值始终为0 //第五个参数:TrackbarCallback onChange,默认值为0,指向回调函数的指针。每次滑块位置改变时,这个函数都会进行回调。且这个函数的原型必须为void XXXX(int, void*);其中第一个参数是轨迹条的位置,第二个参数是用户数据。如果回调函数是NULL指针,则表示没回调函数的调用,仅第三个参数value变化 //第六个参数:void userdata,默认值0。这个参数是用户传递给回调函数的数据,用来处理轨迹条事件。如果使用的第三个参数value是全局变量,完全可以不去管这个userdata参数 cv::waitKey(); return 0; }
createTrackbar这个函数在Qt Creator中我总是出错,请明白的告诉我 我的手机:13116140007
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
2020-10-21 qt-QPixmap