嵌入式开发之davinci--- 8148/8168/8127 中的添加算饭scd 场景检测 文档简介
Osd
Scd
(1) Introduction
- over view
a) scene change detection
- block diagram
a) graph
b) resvolution
d1:720x576(pal)-25fps 720x480 30-fps(ntsc)--------------704x576 ti
cif:352x288 (支持的处理帧)
quwu:1024x768/4
c) 说明:
The block diagram above illustrates the basic flow of the algorithm. It is helpful to regard the SCD algorithm as an “engine” that consumes input video frames and produces metadata. Input video frames fed to SCD are first partitioned into blocks. Valid YUV input frames provided by the framework are generally CIF resolution or smaller, but block widths are always fixed to be 32-pixels
wide. The xth horizontal and yth vertical block in the partition matrix at time t, i.e. b(x,y,t), is compared against the co-located block from a prior frame b(x,y,t-1) if motion detection for that block is enabled. If frame-level change, e.g. tamper detection, is enabled, then b(x,y,t) is com pared
against a learned model of the scene m(x,y,t-1). The actual operations to generate block-level metadata are more complex than a simple “subtraction,” as depicted in the block diagram.
These metadata are evaluated by logical rules at both a block- and frame-level, depending on whether motion monitoring and/or tamper monitoring is in effect, respectively. Rules for interpreting the metadata are housed inside the algorithm ; however, rules and how they influence decisions can be manipulated by channel-specific parameters selected by the application.
(2) Application programming interface for scene change detection
a) Alglink_scdmod
typedef enum
{
ALG_LINK_SCD_DETECTMODE_DISABLE = 0,
ALG_LINK_SCD_DETECTMODE_MONITOR_FULL_FRAME = 1,
ALG_LINK_SCD_DETECTMODE_MONITOR_BLOCKS = 2,
ALG_LINK_SCD_DETECTMODE_MONITOR_BLOCKS_AND_FRAME = 3
} AlgLink_ScdMode;
ALG_LINK_SCD_DETECTMODE_DISABLE ptz
b) Alglink_scdsensitivity
typedef enum {
ALG_LINK_SCD_SENSITIVITY_VERYLOW = 0,
ALG_LINK_SCD_SENSITIVITY_LOW = 1,
ALG_LINK_SCD_SENSITIVITY_MIDLO = 2,
ALG_LINK_SCD_SENSITIVITY_MID = 3,
ALG_LINK_SCD_SENSITIVITY_MIDHI = 4,
ALG_LINK_SCD_SENSITIVITY_HIGH = 5,
ALG_LINK_SCD_SENSITIVITY_VERYHIGH = 6
} AlgLink_ScdSensitivity;
ALG_LINK_SCD_SENSITIVITY_VERYHIGH
c) Alglink_scdoutput
typedef enum
{
ALG_LINK_SCD_DETECTOR_UNAVAILABLE =-1,
ALG_LINK_SCD_DETECTOR_NO_CHANGE = 0,
ALG_LINK_SCD_DETECTOR_CHANGE = 1
} AlgLink_ScdOutput;
SCD_TI_process
d) Scd struct
e) Scd function call
General guidelines for video and scene characterstics
SCD is designed to analyze video that is acquired from a fixed camera, i.e. the field of view does not change due to panning, tilting, or zooming. Video is processed frame-by-frame. The order and timing of frames are
crucial for analysis. SCD algorithms expect frames to be available in sequential order with inter-frame jitter (variability in frame timing) minimized to be no greater than ±100 ms outside of the specified processing rate.
SCD relies on a fairly stable field of view to identify relevant changes caused by moving objects. Tamper events are assumed to affect the majority of the field of view, depending on the sensitivity setting. To
prevent false alarms and achieve desired results, installers should be careful to position the camera to satisfy the following constraints:
The video should be in focus and as sharp as possible.
Camera mounting should be fixed and stable. Excessive vibration or movement from wind, large vehicles, or other external factors should be avoided.
Scene Change Detection API & User’s Guide: Beta 00.50 – January 2012
TI Confidential – NDA Restrictions
Good contrast with strong edges and corners is desirable for optimum performance. Large reflective surfaces, glare and direct illumination (camera pointed at the sun) can result in poor contrast and must be avoided. Tamper detection in scenes without enough visual texture or contrast, e.g. camera pointed at a blank wall, could be ineffective. However, motion detection has
no similar requirement, except for sufficient illumination.
No more than 75% of the scene should experience motion or change in appearance at any given time. The size of any individual moving object should not fill more than 50% of the camera’s field of view at any time. If these recommendations are unavoidable and the field of view is easily filled by objects moving into the scene temporarily, e.g. the scene of a camera monitoring traffic is filled by vehicles in traffic, consider lowering the sensitivity to prevent false detections.
Areas monitored by the camera should be reasonably well lit, e.g. adequate for supporting human eyesight. SCD can work with infrared illuminators to assist in very low-light environments or conditions, but operation under these circumstances can produce undesired effects. Precipitation, e.g. rain drops, snow flakes, ice, sleet, etc., dirt, insects, or other debris on the camera lens can cause SCD algorithms to work improperly.
Adjustments to sensitivity settings will influence detection performance. Lower sensitivity will require a larger degree of high-contrast change for a tamper event to be generated and will result in fewer false events. Higher sensitivity will require a smaller amount of change for an event to be generated and could therefore result in more events, some of them false alarms.
(3)数据链路case
根据process——capture——encode——decode——display自己写的一个包含camerlink、sclrlink、duplink、ipcoutlink、ipcframeoutlink、ipcbitoutlink、swmilink、displaylink
http://blog.csdn.net/mianhuantang848989/article/details/38035731 demo
http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/t/211031.aspx?pi199607=2 scd 输入帧问题
http://max.book118.com/html/2014/0804/9301782.shtm 基于ccd的车辆识别系统的设计与实现
http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/p/61281/136196.aspx scd 无返回结果,可能是没开启scd
嵌入式开发之davinci--- 8148/8168/8127 中的添加算饭scd 场景检测 文档简介的更多相关文章
- 嵌入式开发之davinci--- 8148/8168/8127 中的添加算饭scd 场景检测 代码实现
http://blog.csdn.net/mianhuantang848989/article/details/38035731 http://www.61ic.com/Article/DaVinci ...
- python模块之httplib(在py3中功能进一步强大,请详看文档)
# -*- coding: utf-8 -*-#python 27#xiaodeng#python模块之httplib(在py3中功能进一步强大,请详看文档) import httplib#是较为底层 ...
- ASP.NET Core 3.0 WebApi中使用Swagger生成API文档简介
参考地址,官网:https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/getting-started-with-swashbuckle?view ...
- 编写Java程序,在硬盘中选取一个 txt 文件,读取该文档的内容后,追加一段文字“[ 来自新华社 ]”,保存到一个新的 txt 文件内
查看本章节 查看作业目录 需求说明: 在硬盘中选取一个 txt 文件,读取该文档的内容后,追加一段文字"[ 来自新华社 ]",保存到一个新的 txt 文件内 实现思路: 创建 Sa ...
- 嵌入式开发之davinci--- 8148/8168/8127 中的xdc 简介
XDC是TI公司为嵌入式实时系统可重用软件组件(在XDC里被成为packages,以下成为包)制定的一套标准.它包括一些有用的工具,标准的API函数,静态配置文件和打包(packaging)操作.XD ...
- 嵌入式开发之zynqMp ---Zynq UltraScale+ MPSoC 图像编码板zcu102
1.1 xilinx zynqMp 架构 1.1.1 16nm 级别工艺 Zynq UltraScale+ MPSoC架构 Xilinx新一代Zynq针对控制.图像和网络应用推出了差异化的产品系,这 ...
- 嵌入式开发之davinci---IPIPE、IPIPEIF and ISIF这三者有什么区别
(1)缩写概念 (2)各自区别 (3)不同sensor 采集接口 (4)采集后的数据链路link (5)8127 中的iss和ipipe的区别 (1)缩写概念 http://www.ti.com.cn ...
- GMap.Net开发之在WinForm和WPF中使用GMap.Net地图插件
GMap.NET是什么? 来看看它的官方说明:GMap.NET is great and Powerful, Free, cross platform, open source .NET contro ...
- Spring Boot中使用Swagger2构建强大的RESTful API文档
由于Spring Boot能够快速开发.便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API.而我们构建RESTful API的目的通常都是由于多终端的原因,这 ...
随机推荐
- mysql中使用load data infile导入数据的用法
有时需要将大量数据批量写入数据库,直接使用程序语言和Sql写入往往很耗时间,其中有一种方案就是使用mysql load data infile导入文件的形式导入数据,这样可大大缩短数据导入时间. LO ...
- 条款33:避免遮掩继承而来的名称(Avoiding hiding inherited names)
NOTE: 1.derived classes 内的名称会遮掩base classes内的名称.在public继承下从来没有人希望如此. 2.为了让被遮掩的名称再见天日,可使用using 声明方式或转 ...
- jquery 打星评分插件
<link rel="stylesheet" href="/static/vendor/raty/jquery.raty.css"> <scr ...
- 剑指Offer(书):机器人的运动范围
题目:地上有一个m行和n列的方格.一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子. 例如,当k为18时,机器人能够进 ...
- 【Codeforces 1006D】Two Strings Swaps
[链接] 我是链接,点我呀:) [题意] 题意 [题解] 注意只能改变a不能改变b 然后只要让a[i],b[i],a[n-i-1],b[n-i-1]这4个字符能凑成两对.全都一样就可以了 分类讨论下就 ...
- 大数据学习——mapreduce共同好友
数据 commonfriends.txt A:B,C,D,F,E,O B:A,C,E,K C:F,A,D,I D:A,E,F,L E:B,C,D,M,L F:A,B,C,D,E,O,M G:A,C,D ...
- 如何安装python包
安装python包有两种方法: 使用Python包管理器pip工具 在Linux系统中,首先 yum install python-pip 然后就可以欢快的pip install *** 啦 源代码安 ...
- Laya 分帧加载优化
Laya 分帧加载优化 @author ixenos Flash中的EnterFrame事件在Laya中等同于Laya.timer.frameLoop(1,...) Laya.timer.frameL ...
- percona-toolkit工具安装
1.yum安装 yum install perl-TermReadKey.x86_64 yum install perl-IO-Socket-SSL yum install perl-DBI.x86_ ...
- python多线程--优先级队列(Queue)
Python的Queue模块中提供了同步的.线程安全的队列类,包括FIFO(先入先出)队列Queue,LIFO(后入先出)队列LifoQueue,和优先级队列PriorityQueue.这些队列都实现 ...