0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenCV4.8 Java SDK實現(xiàn)YOLOv5模型部署

OpenCV學(xué)堂 ? 來源:OpenCV學(xué)堂 ? 2024-11-05 17:21 ? 次閱讀

OpenCV Java開發(fā)環(huán)境配置

Java 開發(fā)的IDE,推薦選擇IDEA這個,真的比較好用,我下載的是社區(qū)版,免費可用。

安裝好以后直接點擊打開,選擇 New Project

添加本地的OpenCV Java SDK的 Jar文件依賴包 從Project Structure到 Modules 到 Module SDK 添加Jars or Dependence

OpenCV Java 代碼測試

OpenCV Java配置好以后,測試代碼首先需要加載DLL,然后依賴Java SDK,可以實現(xiàn)圖像加載與顯示。測試代碼如下:

package org.example;


import org.opencv.core.*;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;




//TIP To Run code, press  or
// click the  icon in the gutter.
public class YOLOv5DNNDetector {
    public static void main(String[] args) {
        System.load("D:/opencv-4.8.0/opencv/build/java/x64/opencv_java480.dll");
        System.out.println("start to read image...");
        Mat inputImage = Imgcodecs.imread("D:/images/lena.jpg");
        HighGui.imshow("Java OpenCV開發(fā)測試", inputImage);
        HighGui.waitKey(0);
        HighGui.destroyAllWindows();
        System.exit(0);
    }
}

運行結(jié)果如下:

YOLOv5模型部署

基于YOLOv5 7.0版本,完成了對象檢測

publicstaticvoidmain(String[]args){

System.load("D:/opencv-4.8.0/opencv/build/java/x64/opencv_java480.dll");
System.out.println("starttoreadimage...");
Stringfile_path="D:/python/yolov5-7.0/classes.txt";
try{
MatinputImage=Imgcodecs.imread("D:/bird_test/city-walk.jpg");
java.util.ArrayListboxes=newArrayList<>();
FileInputStreamfis=newFileInputStream(file_path);
BufferedReaderbr=newBufferedReader(newInputStreamReader(fis));
YOLOv5DNNDetectordetector=newYOLOv5DNNDetector("D:/python/yolov5-7.0/yolov5s.onnx",0.5f,0.5f,640,640);
Stringline;
ArrayListmap_labels=newArrayList<>();
while((line=br.readLine())!=null){
map_labels.add(line);
}
detector.addAllLabels(map_labels);
detector.infer_image(inputImage,boxes);
HighGui.imshow("OpenCV4.8forJavaYOLOv5對象檢測演示",inputImage);
HighGui.waitKey(0);
HighGui.destroyAllWindows();
}catch(Exceptione){
e.printStackTrace();
}
System.exit(0);
}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JAVA
    +關(guān)注

    關(guān)注

    19

    文章

    2952

    瀏覽量

    104467
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3108

    瀏覽量

    48646
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4719

    瀏覽量

    68210
  • OpenCV
    +關(guān)注

    關(guān)注

    29

    文章

    624

    瀏覽量

    41210

原文標(biāo)題:OpenCV4.8 Java SDK實現(xiàn)YOLOv5模型部署

文章出處:【微信號:CVSCHOOL,微信公眾號:OpenCV學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    YOLOv5】LabVIEW+YOLOv5快速實現(xiàn)實時物體識別(Object Detection)含源碼

    前面我們給大家介紹了基于LabVIEW+YOLOv3/YOLOv4的物體識別(對象檢測),今天接著上次的內(nèi)容再來看看YOLOv5。本次主要是和大家分享使用LabVIEW快速實現(xiàn)
    的頭像 發(fā)表于 03-13 16:01 ?2055次閱讀

    Yolov5算法解讀

    ,這幾個模型的結(jié)構(gòu)基本一樣,不同的是depth_multiple模型深度和width_multiple模型寬度這兩個參數(shù)。 yolov5主要分為輸入端,backbone,Neck,和h
    的頭像 發(fā)表于 05-17 16:38 ?8352次閱讀
    <b class='flag-5'>Yolov5</b>算法解讀

    YOLOv5】LabVIEW+TensorRT的yolov5部署實戰(zhàn)(含源碼)

    今天主要和大家分享在LabVIEW中使用純TensoRT工具包快速部署實現(xiàn)yolov5的物體識別
    的頭像 發(fā)表于 08-21 22:20 ?1256次閱讀
    【<b class='flag-5'>YOLOv5</b>】LabVIEW+TensorRT的<b class='flag-5'>yolov5</b><b class='flag-5'>部署</b>實戰(zhàn)(含源碼)

    龍哥手把手教你學(xué)視覺-深度學(xué)習(xí)YOLOV5

    利用labview部署yolov5導(dǎo)出的模型,能利用攝像頭動態(tài)檢測輸出目標(biāo)檢測結(jié)果。根據(jù)工業(yè)視覺外觀檢測的速度和準(zhǔn)確性要求,龍哥視覺結(jié)合labview編程平臺推出了labview+yolov5
    發(fā)表于 09-03 09:39

    怎樣使用PyTorch Hub去加載YOLOv5模型

    在Python>=3.7.0環(huán)境中安裝requirements.txt,包括PyTorch>=1.7。模型和數(shù)據(jù)集從最新的 YOLOv5版本自動下載。簡單示例此示例從
    發(fā)表于 07-22 16:02

    如何YOLOv5測試代碼?

    使用文檔“使用 YOLOv5 進(jìn)行對象檢測”我試圖從文檔第 10 頁訪問以下鏈接(在 i.MX8MP 上部署 yolov5s 的步驟 - NXP 社區(qū)) ...但是這樣做時會被拒絕訪問。該文檔沒有說明需要特殊許可才能下載 tes
    發(fā)表于 05-18 06:08

    yolov5模型onnx轉(zhuǎn)bmodel無法識別出結(jié)果如何解決?

    推理硬件:質(zhì)算盒SE5,芯片BM1684。 2. SDK: v2.7.0 代碼: 1. 模型來源yolov5官方:https://github.com/ultralytics/
    發(fā)表于 09-15 07:30

    YOLOv5OpenCV上的推理程序

    YOLOv5官方給出的YOLOv5OpenCV上推理的程序相對來說是比較通俗易懂的,條理清晰,有基本的封裝,直接可用!但是我也發(fā)現(xiàn),模型的推理時間跟前后處理的時間相差無幾,特別是當(dāng)視
    的頭像 發(fā)表于 11-02 10:16 ?1810次閱讀

    yolov5訓(xùn)練部署全鏈路教程

    本教程針對目標(biāo)檢測算法yolov5的訓(xùn)練和部署到EASY-EAI-Nano(RV1126)進(jìn)行說明。
    的頭像 發(fā)表于 01-05 18:00 ?3068次閱讀
    <b class='flag-5'>yolov5</b>訓(xùn)練<b class='flag-5'>部署</b>全鏈路教程

    在C++中使用OpenVINO工具包部署YOLOv5模型

    下載并轉(zhuǎn)換YOLOv5預(yù)訓(xùn)練模型的詳細(xì)步驟,請參考:《基于OpenVINO?2022.2和蝰蛇峽谷優(yōu)化并部署YOLOv5模型》,本文所使用的
    的頭像 發(fā)表于 02-15 16:53 ?4446次閱讀

    使用旭日X3派的BPU部署Yolov5

    本次主要介紹在旭日x3的BPU中部署yolov5。首先在ubuntu20.04安裝yolov5,并運行yolov5并使用pytoch的pt模型
    的頭像 發(fā)表于 04-26 14:20 ?821次閱讀
    使用旭日X3派的BPU<b class='flag-5'>部署</b><b class='flag-5'>Yolov5</b>

    三種主流模型部署框架YOLOv8推理演示

    深度學(xué)習(xí)模型部署有OpenVINO、ONNXRUNTIME、TensorRT三個主流框架,均支持Python與C++的SDK使用。對YOLOv5~Y
    的頭像 發(fā)表于 08-06 11:39 ?2579次閱讀

    YOLOv8+OpenCV實現(xiàn)DM碼定位檢測與解析

    YOLOv8是YOLO系列模型的最新王者,各種指標(biāo)全面超越現(xiàn)有對象檢測與實例分割模型,借鑒了YOLOv5、YOLOv6、YOLOX等
    的頭像 發(fā)表于 08-10 11:35 ?1214次閱讀
    <b class='flag-5'>YOLOv8+OpenCV</b><b class='flag-5'>實現(xiàn)</b>DM碼定位檢測與解析

    OpenCV4.8+YOLOv8對象檢測C++推理演示

    自從YOLOv5更新成7.0版本,YOLOv8推出以后,OpenCV4.6以前的版本都無法再加載導(dǎo)出ONNX格式模型了,只有OpenCV4.
    的頭像 發(fā)表于 09-27 11:07 ?1417次閱讀
    <b class='flag-5'>OpenCV4.8+YOLOv</b>8對象檢測C++推理演示

    基于OpenCV DNN實現(xiàn)YOLOv8的模型部署與推理演示

    基于OpenCV DNN實現(xiàn)YOLOv8推理的好處就是一套代碼就可以部署在Windows10系統(tǒng)、烏班圖系統(tǒng)、Jetson的Jetpack系統(tǒng)
    的頭像 發(fā)表于 03-01 15:52 ?1321次閱讀
    基于<b class='flag-5'>OpenCV</b> DNN<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>YOLOv</b>8的<b class='flag-5'>模型</b><b class='flag-5'>部署</b>與推理演示