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

外销网站建立/外链在线发布工具

外销网站建立,外链在线发布工具,旅游网站开发方案ppt,wordpress cron job环境:linuxqtcreator2.3opencv2.3.11.配置好Creator环境2.新建qt工程3.配置pro文件,将opencv库路径添加到pro中4.编辑ui界面文件,绘制2个按钮和2个label,保存文件右键添加槽函数实现:void MainWindow::on_openPushButt…

环境:linux+qtcreator2.3+opencv2.3.1

1.配置好Creator环境

2.新建qt工程

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

3.配置pro文件,将opencv库路径添加到pro中

0818b9ca8b590ca3270a3433284dd417.png

4.编辑ui界面文件,

绘制2个按钮和2个label,保存文件

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

右键添加槽函数

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

实现:

void MainWindow::on_openPushButton_clicked()

{

QString filename = QFileDialog::getOpenFileName(this,tr("Open Image"),"",tr("Image File(*.bmp *.jpg *.jpeg *.png *.ico)"));

QTextCodec *code = QTextCodec::codecForName("gb18030");

std::string name = code->fromUnicode(filename).data();

cout<

origin_image= cv::imread(name,1);

if(!origin_image.data)

{

QMessageBox msgBox;

msgBox.setText(tr("image data is null"));

msgBox.exec();

}

else

{

int hight =ui->label->height();

int width =ui->label->width();

cout<

cv::resize(origin_image,processed_image,cv::Size(width,hight));

cv::cvtColor(processed_image,processed_image,CV_BGR2RGB);

cv::imshow("origin_image",origin_image);

cv::imshow("processed_image",processed_image);

img = QImage((const unsigned char*)(processed_image.data),processed_image.cols,processed_image.rows,QImage::Format_RGB888);

ui->label->clear();

ui->label->setPixmap(QPixmap::fromImage(img));

ui->processPushButton->setEnabled(true);

// ui->label->resize(ui->label->pixmap()->size());

}

}

void MainWindow::on_processPushButton_clicked()

{

//cv::Sobel(processed_image,processed_image,CV_8U,1,0);

cv::flip(processed_image,processed_image,1);

//cv::cvtColor(processed_image,processed_image,CV_BGR2RGB);

img = QImage((const unsigned char*)(processed_image.data),processed_image.cols,processed_image.rows,QImage::Format_RGB888);

ui->label2->clear();

ui->label2->setPixmap(QPixmap::fromImage(img));

ui->processPushButton->setEnabled(true);

//ui->label2->resize(ui->label->pixmap()->size());

ui->label2->setPixmap(QPixmap::fromImage(img));

}

4、实现效果:

发现有些图显示正常,而有些图和原图对比失真严重

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

原因在于图像在存储数据时的方式:opencv在存储图像宽度不是4的倍数时,对图像行进行了填补格式,以4补齐。这样如果Qimage的宽度不是4的倍数时会造成图像显示不正常。将Qimage宽度调整为4的倍数即可显示正常,这里对原图像进行了缩放,将其缩放成lable的大小,使label的宽度为4的倍数即可。另外

QImage是RGB排列,而Mat 是 BGR,在显示时需要进行转换。

cv::cvtColor(processed_image,processed_image,CV_BGR2RGB);  

img = QImage((const unsigned char*)(processed_image.data),processed_image.cols,processed_image.rows,QImage::Format_RGB888);

0818b9ca8b590ca3270a3433284dd417.png

路径包含中文时,无法读取图像。

环境:win7+qt5.51+opencv2.4.10

与linux下基本一样,将pro文件配置好即可。

QT += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = cvshow

TEMPLATE = app

SOURCES += main.cpp\

mainwindow.cpp

HEADERS += mainwindow.h

FORMS += mainwindow.ui

INCLUDEPATH += G:\opencv2410\build\include

CONFIG(release,debug|release){

LIBS += G:\opencv2410\build\x86\vc10\lib\opencv_calib3d2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_contrib2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_core2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_features2d2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_flann2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_gpu2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_highgui2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_imgproc2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_legacy2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_ml2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_nonfree2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_objdetect2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_photo2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_stitching2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_video2410.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_videostab2410.lib \

}

CONFIG(debug,debug|release){

LIBS += G:\opencv2410\build\x86\vc10\lib\opencv_calib3d2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_contrib2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_core2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_features2d2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_flann2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_gpu2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_highgui2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_imgproc2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_legacy2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_ml2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_nonfree2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_objdetect2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_photo2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_stitching2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_ts2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_video2410d.lib \

G:\opencv2410\build\x86\vc10\lib\opencv_videostab2410d.lib \

}

http://www.lbrq.cn/news/839053.html

相关文章:

  • 南京做网站软件/百度下载安装到桌面上
  • 企业建设企业网站的好处/托管竞价推广公司
  • 做购物网站小图标/小说排行榜
  • 小型视频网站建设/品牌宣传策划公司
  • 厦门网站建设首选厦门一联网络/手机网站搜索优化
  • 做外汇都看那些网站/线上直播营销策划方案
  • 摄影师网站制作/营销策划公司名称
  • 辽宁平台网站建设哪里好/市场调研问卷
  • 有没有做代理商的明细网站/北京十大营销策划公司
  • 网站优化计划书/bing搜索引擎下载
  • 怎么查域名是否被注册/什么是关键词排名优化
  • java怎么做直播网站/郑州百度推广公司
  • 三亚网红打卡景点/南宁seo优化
  • 城乡建设网站宁德/如何做好品牌推广工作
  • 信阳公司网站建设/西安网站快速排名提升
  • 天津开发区建网站公司/简述获得友情链接的途径
  • 注销网站 注销主体/中国十大网络销售公司
  • 开发小程序游戏需要多少钱/青岛seo
  • 湖南交通建设监理协会网站/微信营销号
  • 武汉建站网站/广告投放平台都有哪些
  • web前端开发案例/北京自动seo
  • 网站开发预算表/网上怎么免费推广
  • 大连建设工业产品网站/搜索排名怎么做
  • 做外卖系统哪家网站做的好/外贸营销网站建设
  • 搜索网站的浏览器/谷歌seo和百度seo区别
  • 国外室内设计网站大全/建立网站要多少钱一年
  • 无锡做食品网站的公司简介/优化推广网站怎么做最好
  • 南岸网站建设哪家好/免费广告发布平台
  • 是做网站的怀孕后/百度商家平台登录
  • 四川做网站多少钱/站长源码
  • 硅谷顶级风投发布《2025年AI实战手册》|附下载
  • 3D材质总监的“光影魔法”:用Substance Sampler AI,“擦除”照片中的光影
  • 2025年C++后端开发高频面试题深度解析:线程安全LRU缓存设计与实现
  • 2025最新国产用例管理工具评测:Gitee Test、禅道、蓝凌测试、TestOps 哪家更懂研发协同?
  • etcd自动压缩清理
  • MFC/C++语言怎么比较CString类型最后一个字符