caiji伦

caiji伦

0个粉丝

3

问答

0

专栏

0

资料

caiji伦  发布于  2025-10-15 18:11:36
采纳率 0%
3个问答
113

【3559板子】 为什么cover_handles[0]可以正常创建和attach,但是cover_handles[1] attach 就会报错呢?错误码0xa0038003

   
bool Hi3559VideoPipeline::InitCovers(int max_boxes, int thick) {
    printf("InitCovers begin=======\n");
    if (covers_inited_) return true;
    covers_max_    = std::max(1, max_boxes);
    default_thick_ = (thick & ~1);
    if (default_thick_ < 2) 
        default_thick_ = 2;
    printf("covers_max_ :%d, default_thick_: %d\n" , covers_max_, default_thick_);
    cover_handles_.resize(covers_max_);
    cover_handles_[0] = 0;
    cover_mpp_.enModId  = HI_ID_VO;
    cover_mpp_.s32DevId = 0;
    cover_mpp_.s32ChnId = 0;
for (int i = 0; i < 6; ++i) {
        我在3559上跑yolo3识别检测画框框,现在是可以正常识别。但是卡在画框上。我使用的是region 画 converex ,在识别到框时候,我会把converex 的bshow设为true,没识别到就设为false,这虽然能画出来。但是每次切换bshow会出现黑屏现象。所以我目前想知道我这个做法是否正确,如果正确如何解决这个黑屏问题,以及如何画出多个识别框。如果不正确也想知道怎么做才是对的[i] = i;
        RGN_ATTR_S a{};
        a.enType = COVEREX_RGN;
        HI_S32 ret = HI_MPI_RGN_Create(cover_handles_[i], &a);
        if (ret != HI_SUCCESS) { 
            printf("[COVER] Create[%d] ret=%#x\n", i, ret);
            FiniCovers();
            return false;
        }
        RGN_CHN_ATTR_S chn_attr{};
        chn_attr.bShow = HI_FALSE;
        chn_attr.enType = COVEREX_RGN;
        chn_attr.unChnAttr.stCoverExChn.u32Layer = i;
        chn_attr.unChnAttr.stCoverExChn.enCoverType = AREA_QUAD_RANGLE;
        chn_attr.unChnAttr.stCoverExChn.stQuadRangle.stPoint[0] = {0, 0};
        chn_attr.unChnAttr.stCoverExChn.stQuadRangle.stPoint[1] = {2, 0};
        chn_attr.unChnAttr.stCoverExChn.stQuadRangle.stPoint[2] = {2, 2};
        chn_attr.unChnAttr.stCoverExChn.stQuadRangle.stPoint[3] = {2, 0};

        chn_attr.unChnAttr.stCoverExChn.u32Color = 0x00FF0000;
        chn_attr.unChnAttr.stCoverExChn.stQuadRangle.bSolid = HI_FALSE;
        chn_attr.unChnAttr.stCoverExChn.stQuadRangle.u32Thick = 2;
        ret = HI_MPI_RGN_AttachToChn(cover_handles_[i], &cover_mpp_, &chn_attr);
        if (ret != HI_SUCCESS) { 
            printf("[COVER] Attach[%d] fail ret=%#x\n", i, ret);
            FiniCovers();
            return false;
        }
    }
    printf("InitCovers finish=======\n");
    covers_inited_ = true;
    return true;
}

我在3559上跑yolo3识别检测画框框,现在是可以正常识别。但是卡在画框上。我使用的是region 画 converex ,在识别到框时候,我会把converex 的bshow设为true,没识别到就设为false,这虽然能画出来。但是每次切换bshow会出现黑屏现象。所以我目前想知道我这个做法是否正确,如果正确如何解决这个黑屏问题,以及如何画出多个识别框。如果不正确也想知道怎么做才是对的。有无大佬帮忙看下呀,求求了

我来回答
回答1个
时间排序
认可量排序

UncleRoderick

59个粉丝

16

问答

4

专栏

20

资料

UncleRoderick 2025-10-15 19:40:00
认可1

cat /dev/logmpp可以看看报错信息,批量画框的话可以用VGS画

或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区