嵌入式开发之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的目的通常都是由于多终端的原因,这 ...
随机推荐
- css 实践记录
子绝父相 https://developer.mozilla.org/zh-CN/docs/Web/CSS/position 利用子绝父相来实现一种比较老的居中方式:1.明确宽度:2.定位左边到容器的 ...
- @ApiParam @RequestParam @PathVariable 用法
文章来源:https://www.cnblogs.com/hello-tl/p/9204279.html 1.@ApiParam ,是注解api的参数 ,也就是用于swagger提供开发者文档 ,文档 ...
- python 学习总结1
计算机与程序设计 一.计算机的概念 1.计算机是根据指令操作数据的设备. 2.计算机主要包括两个功能性一个是功能性另一个是计算性 功能性是对数据的操作,表现为数据计算,输入输出处理和结果存储 可编程性 ...
- $config['base_url'] BASE_URL
/*|------------------------------------------------| Base Site URL|--------------------------------- ...
- IDEA maven 无法加载已经安装的模块依赖包
今天打包一直报如下错误 Reactor Summary for freechain-op 1.0.1.OP: [INFO] [INFO] freechain-op .................. ...
- Python+selenium(操作隐藏元素)
测试过程中,偶尔会碰到一些页面的隐藏元素,如下,是小编举的一个简单的例子: test.html <html> <head></head> <body> ...
- LoadRunner中,参数化时Unique取值方式的理解
LoadRunner中,参数化时Unique取值方式的理解 2012年10月15日 18:10:36 瑞秋 阅读数:10028 在LoadRunner中进行参数化时,Parameter的取值设置有 ...
- BestCoder Round #79 (div.2)-jrMz and angles,,暴力求解~
jrMz and angle Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Other ...
- hud 2073
#include<stdio.h> #include<math.h> int main() { int i,j,k,n,m,t; double a]; a; for;i++) ...
- 只有代码不会撒谎,如何通过Spring boot源码查看其对于各个框架的默认配置
我发现很多开发对于看源码都有种恐惧心理,其实不必这样,大部分优秀的源码写的都挺直观的,很多时候,你在搜索引擎上搜到的一些东西并不一定是对的,但源码肯定造不了假,毕竟不管你怎么想,它就在那里,该是什么意 ...