【qt】Qt+OpenCv讀取帶有中文路徑的圖片

在這里插入圖片描述
【opencv4.5.1版本】下載exe解壓即可。。。https://opencv.org/releases/page/2/
【qt5.15.2】

pro文件

QT       += core guigreaterThan(QT_MAJOR_VERSION, 4): QT += widgetsCONFIG += c++17# You can make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0SOURCES += \main.cpp \mainwindow.cppHEADERS += \mainwindow.hFORMS += \mainwindow.ui# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += targetCONFIG(release, debug|release) {LIBS += -L$$PWD/../opencv/build/x64/vc15/lib/ -lopencv_world451opencv.files += $$PWD/sdk/opencv/bin/opencv_world451.dllopencv.path += $$OUT_PWD/Release
}
else {LIBS += -L$$PWD/../opencv/build/x64/vc15/lib/ -lopencv_world451dopencv.files += $$PWD/sdk/opencv/bin/opencv_world451d.dllopencv.path += $$OUT_PWD/Debug
}COPIES += opencvINCLUDEPATH += E:\opencv\opencv\build\include
DEPENDPATH += E:\opencv\opencv\build\include

mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>
#include <opencv2/opencv.hpp>
using namespace cv;QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACEclass MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private:QString m_imgPath = "";private slots:void on_pushButton_clicked();void showImg();private:Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H

mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QFileDialog>
#include <QDebug>MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);
}MainWindow::~MainWindow()
{delete ui;
}void MainWindow::on_pushButton_clicked()
{m_imgPath = QFileDialog::getOpenFileName(this, tr("Open Image"), QCoreApplication::applicationDirPath(), tr("*.png *.jpg"));   //打開圖片文件,選擇圖片qDebug() << "filename: " << m_imgPath;showImg();
}void MainWindow::showImg()
{QFile file(m_imgPath);if (!file.open(QIODevice::ReadOnly)){qDebug() << u8"文件打開失敗";return;}qDebug() << u8"文件讀取成功";// 獲取文件大小qint64 fileSize = file.size();// 讀取文件字節到緩沖區QByteArray buffer;buffer.resize(fileSize);QDataStream in(&file);in.readRawData(buffer.data(), fileSize);// 將緩沖區轉換為cv::Matcv::Mat image = cv::imdecode(cv::_InputArray(buffer.constData(), buffer.size()), cv::IMREAD_UNCHANGED);if (image.empty()){qDebug() << u8"無法解碼圖像文件";return;}// 繼續處理圖像cv::cvtColor(image, image, cv::COLOR_BGR2RGB);QImage disimage = QImage(image.data, image.cols, image.rows,image.step, QImage::Format_RGB888);ui->oldlabel->setPixmap(QPixmap::fromImage(disimage));ui->oldlabel->setScaledContents(true);
}

最后進行編譯部署:
https://blog.csdn.net/qq_34974229/article/details/134872879?spm=1001.2014.3001.5502

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/208346.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/208346.shtml
英文地址,請注明出處:http://en.pswp.cn/news/208346.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

YOLOv8配置文件yolov8.yaml解讀

&#x1f368; 本文為&#x1f517;365天深度學習訓練營 中的學習記錄博客&#x1f356; 原作者&#xff1a;K同學啊 | 接輔導、項目定制 位置 該文件的位置位于 ./ultralytics/cfg/models/v8/yolov8.yaml 模型參數配置 # Parameters nc: 80 # number of classes scales: #…

碩士畢業論文格式修改要點_word

目錄 0、最開始要做的事情1、更改樣式&#xff08;先善器&#xff09;2、多級標題&#xff08;解決自動更新問題必要的基礎設置&#xff09;2、插入圖片&#xff08;1&#xff09;設置一個圖片樣式——“無間隔”&#xff08;2&#xff09;插入題注&#xff08;3&#xff09;修…

redis.conf詳解之replica-read-only

本文基于 redis_version:6.2.5 用法 控制從節點允許讀寫操作&#xff0c;還是讀操作。 replica-read-only yes 1 注意事項&#xff1a; 默認yes&#xff0c;只讀操作。 replica-read-only支持參數[yes,no]&#xff0c;no 支持讀寫操作。 這里說的從節點&#xff0c;是普通…

【flink番外篇】1、flink的23種常用算子介紹及詳細示例(完整版)

Flink 系列文章 一、Flink 專欄 Flink 專欄系統介紹某一知識點&#xff0c;并輔以具體的示例進行說明。 1、Flink 部署系列 本部分介紹Flink的部署、配置相關基礎內容。 2、Flink基礎系列 本部分介紹Flink 的基礎部分&#xff0c;比如術語、架構、編程模型、編程指南、基本的…

小白學java棧的經典算法問題——第四關白銀挑戰

內容1.括號匹配問題2.最小棧3.最大棧 1.括號匹配問題 棧的典型題目還是非常明顯的&#xff0c;括號匹配、表達式計算等等幾乎都少不了棧&#xff0c;本小節我們就看兩個最經典的問題 首先是LeetCode20,鏈接 本道題還是比較簡單的&#xff0c;其中比較麻煩的是如何判斷兩個符…

力扣面試題 08.12. 八皇后(java回溯解法)

Problem: 面試題 08.12. 八皇后 文章目錄 題目描述思路解題方法復雜度Code 題目描述 思路 八皇后問題的性質可以利用回溯來解決&#xff0c;將大問題具體分解成如下待解決問題&#xff1a; 1.以棋盤的每一行為回溯的決策階段&#xff0c;判斷當前棋盤位置能否放置棋子 2.如何判…

hbuilder + uniapp +vue3 開發微信云小程序

1、創建項目&#xff1a; 2、創建項目完成的默認目錄結構&#xff1a; 3、在根目錄新建一個文件夾cloudFns&#xff08;文件名字隨便&#xff09;&#xff0c;存放云函數源碼&#xff1a; 4、修改manifest.json文件&#xff1a;添加 小程序 appid和cloudfunctionRoot&#xff0…

python的websocket方法教程

WebSocket是一種網絡通信協議&#xff0c;它在單個TCP連接上提供全雙工的通信信道。在本篇文章中&#xff0c;我們將探討如何在Python中使用WebSocket實現實時通信。 websockets是Python中最常用的網絡庫之一&#xff0c;也是websocket協議的Python實現。它不僅作為基礎組件在…

pyside/qt03——人機協同的編程教學—直接面向chatGPT實戰開發(做中學,事上練)

先大概有個草圖框架&#xff0c;一點點豐富 我糾結好久&#xff0c;直接用Python寫UI代碼 還是用designer做UI 再轉Python呢&#xff0c; 因為不管怎么樣都要轉成Python代碼&#xff0c; 想了想還是學一下designer吧&#xff0c;有個中介&#xff0c;有直觀理解。 直接這樣也可…

智能優化算法應用:基于食肉植物算法無線傳感器網絡(WSN)覆蓋優化 - 附代碼

智能優化算法應用&#xff1a;基于食肉植物算法無線傳感器網絡(WSN)覆蓋優化 - 附代碼 文章目錄 智能優化算法應用&#xff1a;基于食肉植物算法無線傳感器網絡(WSN)覆蓋優化 - 附代碼1.無線傳感網絡節點模型2.覆蓋數學模型及分析3.食肉植物算法4.實驗參數設定5.算法結果6.參考…

設計并實現一個多線程圖書館管理系統,涉及數據庫操作

沒有實現全部功能&#xff0c;希望路過的大佬&#xff0c;可以實現全部功能&#xff0c;在評論區聊聊 創建數據庫library-demo CREATE DATABASE library-demo創建圖書表book CREATE TABLE book (bookId int(11) NOT NULL AUTO_INCREMENT COMMENT 圖書ID,bookName varchar(15)…

QUIC協議對比TCP網絡性能測試模擬弱網測試

QUIC正常外網壓測數據---時延diff/ms如下圖&#xff1a; QUIC弱網外網壓測數據 TCP正常外網壓測數據 TCP弱網外網壓測數據 結論&#xff1a; 在弱網情況下&#xff0c;TCP和QUIC協議的表現會有所不同。下面是它們在弱網環境中的性能對比&#xff1a; 連接建立&#xff1a;…

HarmonyOS創建JavaScript(類 Web開發模式)項目

上文 HarmonyOS帶大家創建自己的第一個Page頁面并實現路由跳轉(ArkTS)帶大家創建了我們項目中第一個自己創建的page 并完成了一個跳轉邏輯的編寫 上文的開發模式是 ArkTS 的 也被稱為 聲明式開發范式 還有一種 javaScript的 類Web開發模式 這種方式就類似于我們傳統的前端開發模…

基于微群機器人的二次開發

請求URL&#xff1a; http://域名地址/modifyGroupName 請求方式&#xff1a; POST 請求頭Headers&#xff1a; Content-Type&#xff1a;application/jsonAuthorization&#xff1a;login接口返回 參數&#xff1a; 參數名必選類型說明wId是String登錄實例標識chatRoom…

讀書筆記-《數據結構與算法》-摘要2[冒泡排序]

冒泡排序 核心&#xff1a;冒泡&#xff0c;持續比較相鄰元素&#xff0c;大的挪到后面&#xff0c;因此大的會逐步往后挪&#xff0c;故稱之為冒泡。 public class BubbleSort {public static void main(String[] args) {int unsortedArray[] new int[]{6, 5, 3, 1, 8, 7, 2…

Leetcode每日一題學習訓練——Python3版(到達首都的最少油耗)

版本說明 當前版本號[20231205]。 版本修改說明20231205初版 目錄 文章目錄 版本說明目錄到達首都的最少油耗理解題目代碼思路參考代碼 原題可以點擊此 2477. 到達首都的最少油耗 前去練習。 到達首都的最少油耗 ? 給你一棵 n 個節點的樹&#xff08;一個無向、連通、無環…

倒計時模塊復習

經典回顧倒計時 倒計時的基本布局介紹。 一個內容區域和一個輸入區域&#xff0c;內容區域進行劃分 直接使用flex布局會更快一點。 js代碼 我們利用一下模塊化思想&#xff0c;直接把獲得時間這個功能寫成一個函數。方便后續的調用 function getTime() {const date new Date…

MES管理系統通過哪些方面提升產品質量管理水平

在當今高度競爭的市場環境中&#xff0c;質量成為了企業生存和發展的關鍵因素。工廠作為生產產品的核心場所&#xff0c;其質量管理水平直接影響到產品的質量和企業的聲譽。為了應對這一挑戰&#xff0c;許多工廠引入了MES管理系統解決方案。本文將探討MES管理系統如何幫助工廠…

【UE5】監控攝像頭效果(上)

目錄 效果 步驟 一、視角切換 二、攝像頭畫面后期處理 三、在場景中顯示攝像頭畫面 效果 步驟 一、視角切換 1. 新建一個Basic關卡&#xff0c;添加第三人稱游戲資源到項目瀏覽器 2. 新建一個Actor藍圖&#xff0c;這里命名為“BP_SecurityCamera” 打開“BP_Securit…

模電筆記。。。。

模電 2.8 蜂鳴器 按照蜂鳴器驅動方式分為有源蜂鳴器和無源蜂鳴器 有源的有自己的震蕩電路&#xff0c;無源的要寫代碼控制。 里面有個線圈&#xff0c;相當于電感&#xff0c;儲能&#xff0c;通直隔交。 蜂鳴器的參數&#xff1a;額定電壓&#xff0c;工作電壓&#xff0…