10471
- 收藏
- 点赞
- 分享
- 举报
Hi3519+IMX226 IVE实现移动侦测
本帖最后由 zhtao2012 于 2016-12-16 11:40 编辑
大家好,目前在做3519开发的时候遇到一个问题:
在处理移动侦测的时候,sample中调用海思库函数HI_IVS_MD_Process,得到pstBlob的区域信息这种,在处理的时候海思是这么处理的:
for(i = 0;i < 254;i++)
{
if(pstBlob->astRegion.u32Area > u16Thr)
{
pstRect->astRect[u16Num].astPoint[0].s32X = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Left / (HI_FLOAT)u16SrcWidth * (HI_FLOAT)u16DstWidth) & (~1) ;
pstRect->astRect[u16Num].astPoint[0].s32Y = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Top / (HI_FLOAT)u16SrcHeight * (HI_FLOAT)u16DstHeight) & (~1);
pstRect->astRect[u16Num].astPoint[1].s32X = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Right/ (HI_FLOAT)u16SrcWidth * (HI_FLOAT)u16DstWidth) & (~1);
pstRect->astRect[u16Num].astPoint[1].s32Y = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Top / (HI_FLOAT)u16SrcHeight * (HI_FLOAT)u16DstHeight) & (~1);
pstRect->astRect[u16Num].astPoint[2].s32X = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Right / (HI_FLOAT)u16SrcWidth * (HI_FLOAT)u16DstWidth) & (~1);
pstRect->astRect[u16Num].astPoint[2].s32Y = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Bottom / (HI_FLOAT)u16SrcHeight * (HI_FLOAT)u16DstHeight) & (~1);
pstRect->astRect[u16Num].astPoint[3].s32X = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Left / (HI_FLOAT)u16SrcWidth * (HI_FLOAT)u16DstWidth) & (~1);
pstRect->astRect[u16Num].astPoint[3].s32Y = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Bottom / (HI_FLOAT)u16SrcHeight * (HI_FLOAT)u16DstHeight) & (~1);
bValid = HI_TRUE;
for(j = 0; j < 3;j++)
{
for (k = j + 1; k < 4;k++)
{
if ((pstRect->astRect[u16Num].astPoint[j].s32X == pstRect->astRect[u16Num].astPoint[k].s32X)
&&(pstRect->astRect[u16Num].astPoint[j].s32Y == pstRect->astRect[u16Num].astPoint[k].s32Y))
{
bValid = HI_FALSE;
break;
}
}
}
if (HI_TRUE == bValid)
{
u16Num++;
}
}
}
想问下,这个循环254次,按照文档说的“最多输出区域信息个数为 254”,输出的是我们在图像上看到的有移动侦测发生的时候产生的绿框的个数,还是我们把图像看成16*16共256个小格子的数目? 貌似我打印出来的是移动侦测发生的时候产生的绿框的个数,而且给的4个点的坐标也是绿框的坐标,如果把图像看成16*16的小格子,怎么确定每个小格子的变化?就像跑3516sample代码的时候可以每个格子让它输出0 或1 。
另外我们要在网页上体现出移动侦测产生的时候区域格子的变化,比如我网页上移动侦测支持18*22个小格子,那么移动侦测产生的时候怎么确定每个格子的变化? 3519能做到这点吗? 3516里面有VDA的结构体,3519要怎么做?
[img=901,489]C:\Users\lenovo\Desktop\237GVCFD0L32OO1T`1M}GAU.png[/img]
大家好,目前在做3519开发的时候遇到一个问题:
在处理移动侦测的时候,sample中调用海思库函数HI_IVS_MD_Process,得到pstBlob的区域信息这种,在处理的时候海思是这么处理的:
for(i = 0;i < 254;i++)
{
if(pstBlob->astRegion.u32Area > u16Thr)
{
pstRect->astRect[u16Num].astPoint[0].s32X = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Left / (HI_FLOAT)u16SrcWidth * (HI_FLOAT)u16DstWidth) & (~1) ;
pstRect->astRect[u16Num].astPoint[0].s32Y = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Top / (HI_FLOAT)u16SrcHeight * (HI_FLOAT)u16DstHeight) & (~1);
pstRect->astRect[u16Num].astPoint[1].s32X = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Right/ (HI_FLOAT)u16SrcWidth * (HI_FLOAT)u16DstWidth) & (~1);
pstRect->astRect[u16Num].astPoint[1].s32Y = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Top / (HI_FLOAT)u16SrcHeight * (HI_FLOAT)u16DstHeight) & (~1);
pstRect->astRect[u16Num].astPoint[2].s32X = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Right / (HI_FLOAT)u16SrcWidth * (HI_FLOAT)u16DstWidth) & (~1);
pstRect->astRect[u16Num].astPoint[2].s32Y = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Bottom / (HI_FLOAT)u16SrcHeight * (HI_FLOAT)u16DstHeight) & (~1);
pstRect->astRect[u16Num].astPoint[3].s32X = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Left / (HI_FLOAT)u16SrcWidth * (HI_FLOAT)u16DstWidth) & (~1);
pstRect->astRect[u16Num].astPoint[3].s32Y = (HI_U16)((HI_FLOAT)pstBlob->astRegion.u16Bottom / (HI_FLOAT)u16SrcHeight * (HI_FLOAT)u16DstHeight) & (~1);
bValid = HI_TRUE;
for(j = 0; j < 3;j++)
{
for (k = j + 1; k < 4;k++)
{
if ((pstRect->astRect[u16Num].astPoint[j].s32X == pstRect->astRect[u16Num].astPoint[k].s32X)
&&(pstRect->astRect[u16Num].astPoint[j].s32Y == pstRect->astRect[u16Num].astPoint[k].s32Y))
{
bValid = HI_FALSE;
break;
}
}
}
if (HI_TRUE == bValid)
{
u16Num++;
}
}
}
想问下,这个循环254次,按照文档说的“最多输出区域信息个数为 254”,输出的是我们在图像上看到的有移动侦测发生的时候产生的绿框的个数,还是我们把图像看成16*16共256个小格子的数目? 貌似我打印出来的是移动侦测发生的时候产生的绿框的个数,而且给的4个点的坐标也是绿框的坐标,如果把图像看成16*16的小格子,怎么确定每个小格子的变化?就像跑3516sample代码的时候可以每个格子让它输出0 或1 。
另外我们要在网页上体现出移动侦测产生的时候区域格子的变化,比如我网页上移动侦测支持18*22个小格子,那么移动侦测产生的时候怎么确定每个格子的变化? 3519能做到这点吗? 3516里面有VDA的结构体,3519要怎么做?
[img=901,489]C:\Users\lenovo\Desktop\237GVCFD0L32OO1T`1M}GAU.png[/img]
我来回答
回答6个
时间排序
认可量排序
认可0
认可0
认可0
认可0
认可0
认可0
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片![alt](url)
相关问答
-
2019-04-04 16:12:55
-
2018-06-21 17:18:58
-
2018-10-24 22:07:28
-
2018-05-22 14:49:43
-
2018-12-12 15:04:03
-
2017-08-24 19:25:54
-
2019-02-15 14:58:59
-
2017-08-13 16:27:24
-
2017-05-08 09:36:35
-
2019-01-15 15:49:34
-
2016-11-28 12:14:40
-
2018-12-14 10:18:10
-
2017-05-19 18:22:20
-
02018-12-30 19:22:56
-
2017-04-28 18:37:29
-
2018-11-19 10:28:31
-
2016-11-16 15:59:13
-
2016-11-18 09:39:28
-
2019-05-22 09:47:35
无更多相似问答 去提问
点击登录
-- 积分
-- E币
提问
—
收益
—
被采纳
—
我要提问
切换马甲
上一页
下一页
悬赏问答
-
5Hi3516CV610 如何使用SD卡升级固件
-
5cat /dev/logmpp 报错 <3>[ vi] [func]:vi_send_frame_node [line]:99 [info]:vi pic queue is full!
-
50如何获取vpss chn的图像修改后发送至vo
-
5FPGA通过Bt1120传YUV422数据过来,vi接收不到数据——3516dv500
-
50SS928 运行PQtools 拼接 推到设备里有一半画面会异常
-
53536AV100的sample_vdec输出到CVBS显示
-
10海思板子mpp怎么在vi阶段改变视频数据尺寸
-
10HI3559AV100 多摄像头同步模式
-
9海思ss928单路摄像头vio中加入opencv处理并显示
-
10EB-RV1126-BC-191板子运行自己编码的程序
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
提醒
你的问题还没有最佳答案,是否结题,结题后将扣除20%的悬赏金
取消
确认
提醒
你的问题还没有最佳答案,是否结题,结题后将根据回答情况扣除相应悬赏金(1回答=1E币)
取消
确认