diff --git a/ruoyi-video/src/main/java/com/ruoyi/video/domain/InspectionTask.java b/ruoyi-video/src/main/java/com/ruoyi/video/domain/InspectionTask.java index 431d0d2..6e19c76 100644 --- a/ruoyi-video/src/main/java/com/ruoyi/video/domain/InspectionTask.java +++ b/ruoyi-video/src/main/java/com/ruoyi/video/domain/InspectionTask.java @@ -52,6 +52,16 @@ public class InspectionTask extends BaseEntity { /** 报警次数 */ private Long alarmCount; + private String modelName; + + public void setModelName(String modelName) { + this.modelName = modelName; + } + public String getModelName() { + return modelName; + } + + public void setTaskId(Long taskId) { this.taskId = taskId; } diff --git a/ruoyi-video/src/main/java/com/ruoyi/video/service/VideoAnalysisService.java b/ruoyi-video/src/main/java/com/ruoyi/video/service/VideoAnalysisService.java index be3b11f..ce879b0 100644 --- a/ruoyi-video/src/main/java/com/ruoyi/video/service/VideoAnalysisService.java +++ b/ruoyi-video/src/main/java/com/ruoyi/video/service/VideoAnalysisService.java @@ -72,7 +72,6 @@ public class VideoAnalysisService { /** * 分析视频并更新记录(同步调用) * @param task 巡检任务 - * @param record 巡检记录 * @param videoFile 视频文件 */ public void analyzeVideoWithRecord(InspectionTask task, com.ruoyi.video.domain.InspectionTaskRecord record, File videoFile) { @@ -83,7 +82,11 @@ public class VideoAnalysisService { File outputVideoFile = File.createTempFile("analysis_output_", ".mp4"); // 创建检测器 - HttpYoloDetector detector = new HttpYoloDetector("yolov8", PYTHON_API_URL, MODEL_NAME, 0x00FF00); + String chosenModel = (task.getModelName() != null && !task.getModelName().trim().isEmpty()) + ? task.getModelName().trim() + : MODEL_NAME; + log.info("使用模型进行分析: {} (taskId={})", chosenModel, task.getTaskId()); + HttpYoloDetector detector = new HttpYoloDetector("yolov8", PYTHON_API_URL, chosenModel, 0x00FF00); // 处理视频并记录检测结果 String detectionResult = processVideoWithRecord(videoFile, outputVideoFile, detector, task, record); diff --git a/ruoyi-video/src/main/resources/mapper/video/InspectionTaskMapper.xml b/ruoyi-video/src/main/resources/mapper/video/InspectionTaskMapper.xml index 1f89a30..5a44273 100644 --- a/ruoyi-video/src/main/resources/mapper/video/InspectionTaskMapper.xml +++ b/ruoyi-video/src/main/resources/mapper/video/InspectionTaskMapper.xml @@ -1,9 +1,9 @@ + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -17,6 +17,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -26,23 +27,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select task_id, task_name, device_id, device_name, cron_expression, duration, - threshold, enable_detection, status, execute_count, alarm_count, - last_execute_time, remark, create_by, create_time, update_by, update_time + threshold, enable_detection, status, execute_count, alarm_count, + last_execute_time, model_name, remark, create_by, create_time, update_by, update_time from v_inspection_task - +