From d2ab26d1f30410c3bd3bc0ae7a8e1930e70eea8c Mon Sep 17 00:00:00 2001 From: cmhu <2657262686@qq.com> Date: Thu, 19 Jun 2025 11:40:31 +0800 Subject: [PATCH] 代码优化 --- src/ai_engine_module/road_seg_statistics.cpp | 9 ++++++--- src/ai_platform/header.h | 1 + src/util/JpegUtil.cpp | 6 ++++++ src/util/vpc_util.cpp | 6 ++++++ 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/ai_engine_module/road_seg_statistics.cpp b/src/ai_engine_module/road_seg_statistics.cpp index 2080e3b..bae0da9 100644 --- a/src/ai_engine_module/road_seg_statistics.cpp +++ b/src/ai_engine_module/road_seg_statistics.cpp @@ -299,7 +299,8 @@ int RoadSegProcess::process_gpu(sy_img * batch_img, vector vec_se int lane_cls = cats[i]; vector cur_region; for (int j = 0; j < points.size(); ++j) { - int px = points[j].x*width_ratio; int py = points[j].y*height_ratio; + int px = points[j].x*width_ratio; + int py = points[j].y*height_ratio; cur_region.push_back(px); cur_region.push_back(py); } traffic_region[b].push_back(cur_region); // 存储区域 @@ -311,8 +312,10 @@ int RoadSegProcess::process_gpu(sy_img * batch_img, vector vec_se int seg_cls = region_classes[i]; vector cur_region; for (int j = 0; j < points.size(); ++j) { - int px = points[j].x*width_ratio; int py = points[j].y*height_ratio; - cur_region.push_back(px); cur_region.push_back(py); + int px = points[j].x*width_ratio; + int py = points[j].y*height_ratio; + cur_region.push_back(px); + cur_region.push_back(py); } traffic_region[b].push_back(cur_region); // 存储区域 labels[b].push_back(seg_cls); // 存储类别 diff --git a/src/ai_platform/header.h b/src/ai_platform/header.h index 6a5883a..4c36b6b 100755 --- a/src/ai_platform/header.h +++ b/src/ai_platform/header.h @@ -37,6 +37,7 @@ enum class algorithm_type_t { VEHICLE_SNAPSHOT = 301, VEHICLE_RETROGRADE = 310, VEHICLE_TRESPASS = 311, + VEHICLE_GATHER = 312, // 车辆聚集 NONMOTOR_VEHICLE_SNAPSHOT = 401, TAKEAWAY_MEMBER_CLASSIFICATION = 402, diff --git a/src/util/JpegUtil.cpp b/src/util/JpegUtil.cpp index 82ff987..28b113f 100755 --- a/src/util/JpegUtil.cpp +++ b/src/util/JpegUtil.cpp @@ -18,11 +18,17 @@ int JpegUtil::jpeg_init(int32_t devId){ // channel 准备 dvppChannelDesc_ = acldvppCreateChannelDesc(); ret = acldvppCreateChannel(dvppChannelDesc_); + if(ret != ACL_ERROR_NONE){ + LOG_ERROR("acldvppCreateChannel failed!"); + exit(-2); + } // 创建图片编码配置数据,设置编码质量 // 编码质量范围[0, 100],其中level 0编码质量与level 100差不多,而在[1, 100]内数值越小输出图片质量越差。 jpegeConfig_ = acldvppCreateJpegeConfig(); acldvppSetJpegeConfigLevel(jpegeConfig_, 100); + + return 0; } void JpegUtil::jpeg_release(){ diff --git a/src/util/vpc_util.cpp b/src/util/vpc_util.cpp index 91b9c81..673d663 100755 --- a/src/util/vpc_util.cpp +++ b/src/util/vpc_util.cpp @@ -200,6 +200,12 @@ int VPCUtil::init(int32_t devId){ // channel 准备 dvppChannelDesc_ = acldvppCreateChannelDesc(); ret = acldvppCreateChannel(dvppChannelDesc_); + if(ret != ACL_ERROR_NONE){ + LOG_ERROR("acldvppCreateChannel failed!"); + exit(-2); + } + + return 0; } vector VPCUtil::crop_batch(DeviceMemory *devMem, vector objs){ -- libgit2 0.21.4