这包含了几个创新机制。例如,我们提出的技术为每个像素存储一组所取的值在过去的同一地点或在附近。然后,它将此设置与当前像素值进行比较以确定该像素是否属于背景,并适应模型中随机选择要替换的值背景模型。这种方法不同于那些基于认为最古老的价值观应该首先被取代的经典信念。最后,当发现像素是背景的一部分时,它的值被传播到邻居的背景模型中像素。我们详细描述了我们的方法(包括伪代码和使用的参数值),并将其与其他方法进行比较背景减法技术。效率数字显示我们的方法优于最近证明的最先进的技术在计算速度和检测方面的方法率。我们还分析了缩小版本的性能我们算法的最小值每像素一个字节的内存。看来就算是这样我们算法的简化版本比主流技术。ViBe的实现是可用的

文件:590m.com/f/25127180-492684781-b76041(访问密码:551685)

以下内容无关:

-------------------------------------------分割线---------------------------------------------

在最新的 Chrome Canary 中,一个有意思的 CSS 语法 Container Queries 得到了支持。

Chrome Canary:开发者专用的每日构建版,站上网络科技最前沿。当然,不一定稳定~

而在最近几个 Chrome 版本中,有一些挺有意思的属性相继得到支持,本文就将介绍一下,在今天,新时代布局中,我们能逐渐去使用的一些有意思的新特性,通过本文,你将能了解到:

flex 布局中的 gap 属性
控制容器宽高比属性 aspect-ratio
firefox 下的 CSS Grid 瀑布流布局(grid-template-rows: masonry)
CSS 容器查询(Container Queries)
flex 布局中的 gap 属性
gap 并非是新的属性,它一直存在于多栏布局 multi-column 与 grid 布局中,其中:

column-gap 属性用来设置多栏布局 multi-column 中元素列之间的间隔大小
grid 布局中 gap 属性是用来设置网格行与列之间的间隙,该属性是 row-gap 和 column-gap 的简写形式,并且起初是叫 grid-gap
譬如我们有如下一个 grid 布局:

1
2
3
4
5

.grid-container { display: grid; border: 5px solid; padding: 20px; grid-template-columns: 1fr 1fr 1fr; } .item { width: 100px; height: 100px; background: deeppink; border: 2px solid #333; } 效果如下:

grid 布局

通过给 grid-container 添加 gap 属性,可以非常方便的设置网格行与列之间的间隙:

.grid-container {
display: grid;
border: 5px solid;
padding: 20px;
grid-template-columns: 1fr 1fr 1fr;

  • gap: 5px;
    }

而从 Chromium 84 开始,我们可以开始在 flex 布局中使用 gap 属性了!Can i use – gap property for Flexbox

Can i use – gap property for Flexbox

它的作用与在 grid 布局中的类似,可以控制水平和竖直方向上 flex item 之间的间距:

.flex-container {
width: 500px;
display: flex;
flex-wrap: wrap;
gap: 5px;
justify-content: center;
border: 2px solid #333;
}

.item {
width: 80px;
height: 100px;
background: deeppink;
}

gap 属性的优势在于,它避免了传统的使用 margin 的时候需要考虑第一个或者最后一个元素的左边距或者右边距的烦恼。正常而言,4 个水平的 flex item,它们就应该只有 3 个间隙。gap 只生效于两个 flex item 之间。

控制容器宽高比属性 aspect-ratio
保持元素容器一致的宽高比(称为长宽比)对于响应式 Web 设计和在某些布局当中至关重要。 现在,通过 Chromium 88 和 Firefox 87,我们有了一种更直接的方法来控制元素的宽高比 – aspect-ratio。Can i use – aspect-ratio

Can i use – aspect-ratio

首先,我们只需要设定元素的宽,或者元素的高,再通过 aspect-ratio 属性,即可以控制元素的整体宽高:

div { background: deeppink; aspect-ratio: 1/1; } .width { width: 100px; } .height { height: 100px; } 都可以得到如下图形:

其次,设定了 aspect-ratio 的元素,元素的高宽其中一个发生变化,另外一个会跟随变化:

宽高比1:1
宽高比2:1
宽高比3:1

.container { display: flex; width: 30vw; padding: 20px; gap: 20px; } .container > div { flex-grow: 1; background: deeppink; } .container > div:nth-child(1) { aspect-ratio: 1/1; } .container > div:nth-child(2) { aspect-ratio: 2/1; } .container > div:nth-child(3) { aspect-ratio: 3/1; } 当容器大小变化,每个子元素的宽度变宽,元素的高度也随着设定的 aspect-ratio 比例跟随变化:

CodePen Demo – aspect-ratio Demo

firefox 下的 CSS Grid 瀑布流布局(grid-template-rows: masonry)
grid-template-rows: masonry 是 firefox 在 firefox 87 开始支持的一种基于 grid 布局快速创建瀑布流布局的方式。并且 firefox 一直在推动该属性进入标准当中。

从 firefox 87 开始,在浏览器输入网址栏输入 about:config 并且开启 layout.css.grid-template-masonry-value.enabled 配置使用。Can i use – grid-template-rows: masonry

正常而言,我们想要实现瀑布流布局还是需要花费一定的功夫的,即便是基于 grid 布局。在之前,我们通过 grid 布局,通过精细化控制每一个 grid item,也可以实现一些伪瀑布流布局:

1
2
3
4
5
6
7
8

.g-container {
height: 100vh;
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(8, 1fr);
}

.g-item {
&:nth-child(1) {
grid-column: 1;
grid-row: 1 / 3;
}
&:nth-child(2) {
grid-column: 2;
grid-row: 1 / 4;
}
&:nth-child(3) {
grid-column: 3;
grid-row: 1 / 5;
}
&:nth-child(4) {
grid-column: 4;
grid-row: 1 / 6;
}
&:nth-child(5) {
grid-column: 1;
grid-row: 3 / 9;
}
&:nth-child(6) {
grid-column: 2;
grid-row: 4 / 9;
}
&:nth-child(7) {
grid-column: 3;
grid-row: 5 / 9;
}
&:nth-child(8) {
grid-column: 4;
grid-row: 6 / 9;
}
}
效果如下:

CSS Grid 实现伪瀑布流布局

CodePen Demo – CSS Grid 实现伪瀑布流布局

在上述 Demo 中,使用 grid-template-columns、grid-template-rows 分割行列,使用 grid-row 控制每个 grid item 的所占格子的大小,但是这样做的成本太高了,元素一多,计算量也非常大,并且还是在我们提前知道每个元素的高宽的前提下。

ViBe算法source code相关推荐

  1. 运动目标检测ViBe算法

    一.运动目标检测简介   视频中的运动目标检测这一块现在的方法实在是太多了.运动目标检测的算法依照目标与摄像机之间的关系可以分为静态背景下运动检测和动态背景下运动检测.先简单从视频中的背景类型来讨论. ...

  2. ViBe算法原理和代码解析

    ViBe - a powerful technique for background detection and subtraction in video sequences 算法官网:http:// ...

  3. 【论文笔记】 Reinforcement-Learning-Guided Source Code Summarization using Hierarchical Attention

    1 INTRODUCTION 软件维护blablabla--代码注释blablabla-- 好的代码注释应具有以下特征:(1) 正确性,正确地阐明代码的意图:(2) 流利,使维护者易于阅读和理解:(3 ...

  4. 前景检测算法(七)--ViBe算法

    原文: http://blog.csdn.net/zouxy09/article/details/9622285 因为监控发展的需求,目前前景检测的研究还是很多的,也出现了很多新的方法和思路.个人了解 ...

  5. 运动目标检测ViBe算法的armadillo实现

    接上篇,最近在学习c++矩阵库,顺便把vibe算法用c++矩阵库armadillo做了一遍.虽然效果不理想,但是借这个机会算是把armadillo.Eigen.numcpp等几个注明的矩阵库都大致学习 ...

  6. 论文中文翻译——Automated Vulnerability Detection in Source Code Using Deep Representation Learning

    本论文相关内容 论文下载地址--Web Of Science 论文中文翻译--Automated Vulnerability Detection in Source Code Using Deep R ...

  7. A Novel Neural Source Code Representation based on Abstract Syntax Tree--ICSE2019

    一种新型的基于源代码表示的一种方法 最新的研究表明,基于AST的神经模型可以更好地表示源代码.然而AST的规模通常较大,现有的模型容易出现长期依赖的问题. 本文提出了ASTNN,一种新的基于AST的源 ...

  8. 【综述笔记】 A survey of automatic generation of source code comments Algorithms and techniques

    A survey of automatic generation of source code comments Algorithms and techniques ABSTRACT 代码注释存在问题 ...

  9. Pyinstaller 打包 torch 后执行失败 OSError: could not get source code

    1. 问题现象 系统环境 Python 3.6.9 torch 1.2.0 torchvision 0.4.0 Pyinstaller 4.5.1 Pyinstaller 打包 torch 后执行失败 ...

  10. Understanding The React Source Code

    Understanding The React Source Code - Initial Rendering (Simple Component) I UI updating, in its ess ...

最新文章

  1. 表格下划线怎么加粗_这招高!Excel签名栏的下划线随列宽变化,是不是感觉牛哄哄的?...
  2. centos查看历史指令记录_CentOS 系统通过 curlftpfs 挂载 FTP 服务器为本地磁盘
  3. 面了一个 32 岁的程序员,一看就是“卷”出来的
  4. Android 6.0 运行时权限处理完全解析
  5. 第一部分:基础知识(第一章)屏幕部分续
  6. LINUX 上的 Shebang 符号(#!)
  7. CSS 魔法系列:纯 CSS 绘制基本图形(圆、椭圆等)
  8. 解决Linux系统没有/etc/sysconfig/iptables文件
  9. docker-compose安装mongodb
  10. python函数递归年龄_Python学习笔记4-递归函数
  11. xshell执行结果到文本_xshell拷贝文件到本地
  12. python内置函数中的zip,max,min函数例子
  13. 你已经是台成熟的vivo手机了,要自己学会打王者
  14. java email 正则 验证
  15. 计算机专业博士发论文,计算机专业博士论文提纲范本模板 计算机专业博士论文大纲怎样写...
  16. Android中如何利用Minui显示PNG格式的图片
  17. 60创意的USB设备和小工具
  18. 《模型轻量化-剪枝蒸馏量化系列》YOLOv5无损剪枝(附源码)
  19. 大学计算机课算绩点吗,大学体育成绩算入绩点吗?
  20. 微信小程序——分割线

热门文章

  1. python下载pps视频
  2. Inf and NaN cannot be JSON encoded
  3. python notebook 在加载ipynb文件 报错NotJSONError(‘Notebook does not appear to be JSON: \‘\\ufeff{“nbformat“
  4. 大学学生信息管理系统
  5. python抓取微博数据_技术入门 | python利用微博api获取数据
  6. MFC界面库BCGControlBar Pro for MFC v33.1 - 更适配Windows 11
  7. 【Anylogic智能体状态转移】
  8. 软件测试全套教程,软件测试自学线路图
  9. ES6面试题(参考文档)
  10. intellij idea 主题下载网站