-
产品名称:MDC 610软件版本:MDC 610 1.99.202-0000000 问题现象(问题描述):我们把相机接入了MDC,想将相机捕获的图像在Mviz中显示出来。用mdc::visual::Publisher接口发布相机数据,写代码时候有个疑问:Publisher类接口中定义了函数原型bool Publisher::Publish(const Image &iImage)作用域namespace mdc::visual参数输入Image数据返回值true:发布成功false:发布失败头文件#include“publisher.h”描述Image数据发送接口。这里Image结构体里定义的ara::core::Vector<uint8_t> frameData是RGB码流吗?另外,Image结构体为什么没有width和height字段?只发布Vector类型的码流,MViz能将图像可视化出来吗?函数原型Image(Header vHeader, ara::core::Vector<uint8_t> vFrames)作用域namespace mdc::visual参数输入vHeader:Header类型vFrames:ara::core::Vector<uint8_t>类型返回值无头文件#include "publisher.h"描述构造函数。
-
产品名称:MDC 610软件版本:MDC 610 1.99.202-0000000 问题现象(问题描述):MDC 610 1.99.202版本新增了对艾瑞红外相机的适配,我们现在手头上有一台艾瑞光电Asens M6+红外相机,MDC 610的软件版本已经升级到1.99.202,想测试一下MDC能否正常接收到红外相机的图像。我们参考1.99.102版本的代码案例编写了接收相机YUV格式图像的代码,并将YUV图像保存到本地;打印出了原始数据的前100位,用于调试。代码如下:#include <cstdio> #include <fstream> #include <iostream> #include <string> #include <thread> #include <vector> #include "ara/log/logging.h" #include "camera.h" #include "camera_venc.h" #include "camera_mviz.h" #include "ascend_hal.h" using namespace mdc; using namespace mdc::camera; const std::vector<CameraAccessConfig> access = { { .moduleName = "MDC_IRAY_RTD6122C_MAX96705", .cameraId = 0U, .fov = 120U, .fps = 30, .width = 640U, .height = 512U, .streamDepth = 10U, .clusterId = 0U, }, }; void ProcessCameraData(const uint32_t cameraId, CameraData &camData) { static std::vector<uint32_t> count(16U); // 默认最多16个camera ++count[cameraId]; if ((count[cameraId] <= 100) || (count[cameraId] > 110)) { // 只保留10帧yuv return; } std::string fileNameYuv = "dump_camera" + std::to_string(cameraId) + "_" + "seq" + std::to_string(camData.seq) + ".yuv"; // 获取yuv数据 MDCMbuf mbuf; mbuf.SetMbuf(camData.yuvData); if (!mbuf.isValid()) { std::cout << "[ERROR] cameraId: " << cameraId << " get yuvdata failed\n"; return; } void *data = nullptr; uint64_t size = 0U; mbuf.GetBuffData(data, size); mbuf.GetDataLen(size); mbuf.Free(); std::cout << "cameraId " << cameraId << " seq " << camData.seq << " yuv " << data << " size " << size << ", write file : " << fileNameYuv << "\n"; if (data != nullptr && size > 0) { uint8_t* byteData = static_cast<uint8_t*>(data); uint64_t printSize = std::min<uint64_t>(size, 100ULL); std::cout << "First" << printSize << "bytes of data:\n"; for (uint64_t i = 0; i < printSize; i++) { // 以十六进制格式打印,每个字节占2位,不足位补0 std::cout << std::hex << std::setw(2) << std::setfill('0') << static_cast<int>(byteData[i]) << " "; if ((i + 1) % 16 == 0) { std::cout << "\n"; } } std::cout << std::dec << "\n"; } else { std::cout << "No valid data to print.\n"; } // 保存yuv数据 FILE *fp = fopen(fileNameYuv.c_str(), "wb"); if (fp == nullptr) { std::cout << fileNameYuv << "open failed.\n"; return; } fwrite(data, 1, size, fp); fclose(fp); return; } int32_t main(int32_t argc, char *argv[]) { ara::log::InitLogging("camera", "SENSOR ACCESS", ara::log::LogLevel::kInfo, ara::log::LogMode::kRemote | ara::log::LogMode::kConsole); //ara::log::LogMode::kRemote); constexpr int32_t timeout = 1000; // step0.mbuf系统资源初始化 MDCMbufSysInit(); // step1.初始化Camera int32_t ret = CameraInit(access); if (ret != 0) { std::cout << "[ERROR] CameraInit failed, ret = " << ret << "\n"; return -1; } int32_t count = 3000; // 测试300帧 while ((--count) > 0) { std::cout << "Waiting Events ... ..." << std::endl; std::vector<uint32_t> camIds = CameraWaitEvents(timeout); for (const auto &cam : camIds) { std::cout << "Camera event come : " << cam << "\n"; std::vector<CameraData> camDatas; int32_t ret = CameraGetData(cam, camDatas, timeout); if (ret != 0) { std::cout << "[ERROR] CameraGetData failed, ret = " << ret << "\n"; continue; } for (auto &camData : camDatas) { ProcessCameraData(cam, camData); camData.yuvData.Free(); } } } // step3.退出camera,去初始化 ret = CameraDeinit(); if (ret != 0) { std::cout << "[ERROR] CameraDeinit failed, ret = " << ret << "\n"; return -1; } // step4.mbuf系统资源反初始化 MDCMbufSysExit(); std::cout << "run camera success"<< "\n"; return 0; }在本地对YUV格式图像进行可视化时,发现图像呈现出的是一片灰色,看不到正常的热力图。查看打印出的原始数据,发现原始数据每一个字节都是0x80,推断是MDC接收到的相机原始数据是错误的。First100bytes of data: 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 同样的代码,接入森云的可见光相机时,修改CameraAccessConfig后,接收到的YUV图像和原始数据都是正常的。请问可能是什么原因呢?
-
产品名称:MDC 610 软件版本:MDC 610 1.1.027-T000在610平台上抓毫米波的包数据发现只有毫米波发出的数据信息,并没有看到ptp消息,请问这是为什么没有ptp消息?是需要毫米波设置还是配置610还是什么?急!
yd_297482684
发表于2025-10-10 17:03:31
2025-10-10 17:03:31
最后回复
yd_236959118
2025-12-11 22:48:45
184 12 -
产品名称:MDC 610 软件版本:MDC 610 1.1.027-T000 产品文档 求助问题现象:目前MDC610已经利用组合定位传感器获取到时间,但MDC断电再次开机之后,时间会回到上次断电的时间,如何保证MDC610 断电之后时间继续运行?MDC内部是否存在断电计时源?如何设置?
-
产品名称:MDC 610 软件版本:MDC 610 1.1.027-T000需求:我们想要给大陆ARS548这款4D毫米波雷达同MDC610 数据面时间同步,但是这款雷达是UDP通信,所以不能通过CANTSN授时,只能通过gPTP授时,同时该4D毫米波也是支持gPTP方式时间同步。想知道如何将610同步时间信号给到ARS548完成时间同步?
-
在完成MMC导出配置文件后,按产品文档进行了如下操作 之后的Console视图显示 当前项目中没有组件 我做了如下检查工作1.打开MDS工具,查看工程目录“manifest/modules”中是否有相关组件的配置 2.检查MMC搭建的节点通信框架
yd_241565146
发表于2025-09-22 10:01:23
2025-09-22 10:01:23
最后回复
yd_271515212
2026-04-08 11:11:10
189 14 -
首次启动MDS未激活License导入License文件后,单击“Verify”进行合法性校验。校验成功:返回信息“Verify successful”。单击“Apply”进行激活。显示can not find license file .operation not permitted
-
遇到的问题1. 在MMC上导出配置后,在MDS创建组件时遇到报错我按照MDC Development Tool 2.2.001-0000000 产品文档 01操作了以下步骤,没遇到问题 在进行到首次创建组件的的第2步,在视图中,右键单击SCFI工程选择“Scfi Tool > Create And Refresh Components”。遇到了如下报错 为检验是否是配置文件未导入问题,我做了如下操作1. 查看配置文件是否导入成功 可以看到工程目录“manifest/modules”中有相关组件的配置2. 查看环境配置 回显如下 3. 查验依赖工具 回显如下 4. 在编译环境中安装 回显如下 5. 搭建SCFI编译环境 回显如下 综上 目前没有找到报错的原因
-
MDC三分钟左右自动重启,突然发生的,之前也没有这个问题
-
请问如果想要购买MDC610 80pin低速线缆和MTB 310转接盒16pin低速线缆应该在哪里购买?有购买渠道吗?
-
产品名称:MDC 610 软件版本:MDC 610 1.1.027-T000 产品文档 求助问题现象:目前MDC610已经连接到网络(网口接5G移动网关),如何在不利用组合定位传感器的情况下,利用网络同步到国内的NTP等服务器?
-
ssh 登陆进610平台后,在PC端通过scp命令复制文件到MDC平台后,登陆会掉线为什么?现象1:PC端复制进度不动现象2:登陆610状态掉线现象3:当关闭掉scp命令终端后,稍微等一下,才可以登陆610平台现象4:文件确实也可以scp到610平台。
-
在对maptr模型进行导出并部署到mdc610平台时,在onnx到om时出现非常多警告,如下:转换命令:atc --model=maptr_tiny_r50_24e_bevformer.onnx --framework=5 --output=maptr_tiny_r50_24e_bevformer --input_shape="0:1,1,6,3,480,800;2:1,6,4,4" --soc_version=Ascend610我们可以拿到om权重,但是这个om权重在netron中无法可视化,如下:对于onnx文件,可以通过check并正常推理(能得到精度相当高的推理结果)log文件见附件请问大佬们,这里的警告需要在意(修改)吗?(我应该怎么检查错误和进行修改?) (或者,这里的警告会对后续在mdc610上的部署产生问题吗?如果不会,或许我们可以不在意?)
-
MDC610系统如何掉电时钟保持?如何在室内没有GPS同步信号的情况下自己设置时间?或者通过网络同步时钟?有什么办法启动后手动更新本机时钟?
-
产品名称:MDC 610软件版本:MDC 610-1.99.202问题:请教一下,使用HafStatus HafVenc::SendFrame(const ImageData &srcImage)对图像帧进行H.265编码时,传入的srcImage只能是YUV420帧吗?如果我使用的摄像头获取的图像格式是YUV422UYVY,应该怎样进行编码?谢谢~
上滑加载中
推荐直播
-
用码道,让你的AI作品三步上朋友圈2026/08/04 周二 19:00-20:00
林华鼎-华为云AI开发者运营负责人
从入门 · 到做AI应用 · 到企业级开发。不教编程,只教用AI · 零代码、有产出、能带走、可炫耀 · 每课人人动手实操
回顾中 -
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
基于华为云码道,构建你的定制化AI搭子2026/08/14 周五 09:00-11:30
明亮-华为云开发者发展与支持部部长
本期直播将向您全面介绍华为云码道产品,并基于码道手把手教你部署自己的定制化AI陪伴搭子。
回顾中
热门标签