【OpenAI Sora】开启未来:视频生成模型作为终极世界模拟器的突破之旅
这份技术报告主要关注两个方面:(1)我们的方法将各种类型的视觉数据转化为统一的表示形式,从而实现了大规模生成模型的训练;(2)对Sora的能力和局限性进行了定性评估。报告中不包含模型和实现细节。
在以往的研究中,人们使用了多种方法对视频数据进行生成建模,包括循环网络、生成对抗网络、自回归变换器和扩散模型等。然而,这些方法通常只针对特定类型、较短长度或固定分辨率的视觉数据进行研究。Sora是一种通用的视觉数据模型,它能够生成跨越不同持续时间、宽高比和分辨率的视频和图像,甚至可以生成一分钟的高清视频。
将视觉数据转化为补丁
我们受到大型语言模型的启发,这些模型通过在互联网规模的数据上进行训练获得了通用能力。语言模型的成功部分得益于优雅地统一了文本的多种形式,如代码、数学和各种自然语言。在这项工作中,我们考虑了如何使视觉数据的生成模型也能继承这些优势。与语言模型使用文本标记不同,Sora使用视觉“补丁”。之前的研究已经证明,补丁是一种对视觉数据模型而言有效的表示形式。我们发现,补丁是一种高度可扩展且有效的表示形式,适用于对多种类型的视频和图像进行生成模型的训练。
从较高层次上来说,我们将视频转化为补丁的过程是先将视频压缩为低维潜变量空间,然后将表示分解为时空补丁。
视频压缩网络
我们训练了一个网络来降低视觉数据的维度。这个网络以原始视频作为输入,并输出一个时空压缩的潜在表示。Sora在这个压缩的潜在空间上进行训练,并生成视频。我们还训练了一个相应的解码器模型,将生成的潜在表示映射回像素空间。
时空潜在补丁
对于压缩的输入视频,我们提取了一系列时空补丁,这些补丁充当了Transformer的标记。由于图像只是单帧的视频,所以这个方案也适用于图像。我们基于补丁的表示使得Sora能够在具有不同分辨率、持续时间和纵横比的视频和图像上进行训练。在推理阶段,我们可以通过将随机初始化的补丁按照适当大小的网格排列来控制生成视频的尺寸。
为视频生成扩展Transformer
Sora是一个扩散模型,通过输入噪声补丁(以及类似文本提示的条件信息),它被训练来预测原始的“清晰”补丁。重要的是,Sora是一个扩散的Transformer。Transformer在各个领域都展示了卓越的可扩展性,包括语言建模、计算机视觉和图像生成。
在这项工作中,我们发现扩散Transformer在作为视频模型时也能有效地进行扩展。下面,我们展示了在训练进行时,使用固定种子和输入的视频样本的比较。随着训练计算的增加,样本的质量显著提高。
可变的持续时间、分辨率和纵横比
过去处理图像和视频生成的方法通常会将视频调整大小、裁剪或修剪为标准尺寸,例如,256x256分辨率的4秒视频。然而,我们发现对原始尺寸的数据进行训练会带来几个优势。
采样灵活性
Sora能够采样宽屏的1920x1080p视频、垂直的1080x1920视频以及介于两者之间的各种尺寸。这使得Sora可以直接按照原生纵横比为不同设备创建内容。它还使我们能够在生成全分辨率内容之前,通过较低的尺寸快速原型开发内容,而所有这些都是使用同一个模型实现的。
构图和组图的改进
我们基于实证发现,以原生纵横比训练视频可以改善构图和组图效果。我们将Sora与将所有训练视频裁剪为正方形的模型进行了比较,这是训练生成模型时常见的做法。以正方形裁剪训练的模型(左图)有时会生成只有主体部分可见的视频。相比之下,Sora生成的视频(右图)具有改善的构图。
语言理解
训练文本到视频生成系统需要大量带有相应文本标题的视频。我们应用了DALL·E 3中引入的重新标题技术来处理视频。我们首先训练一个高度描述性的标题模型,然后使用该模型为我们训练集中的所有视频生成文本标题。我们发现,训练基于高度描述性视频标题的模型不仅可以提高文本的准确性,还可以提高视频的整体质量。
与DALL·E 3类似,我们还利用GPT将短用户提示转化为更详细的标题,并将其发送到视频模型中。这使得Sora能够生成高质量的视频,准确地遵循用户的提示。
使用图像和视频进行提示
以上所有结果以及我们 首页中的示例都展示了文本到视频的样本。但是Sora也可以通过其他输入进行提示,例如预先存在的图像或视频。这种能力使得Sora能够执行各种图像和视频编辑任务,例如创建完美循环的视频,将静态图像动画化,将视频向前或向后扩展等。
DALL·E图像的动画化
Sora能够根据输入的图像和提示生成视频。下面我们展示基于DALL·E 2[^31]和DALL·E 3[^30]图像生成的示例视频。
一只戴着贝雷帽和黑色高领衫的柴犬。
平面设计风格的怪物插画,描绘了一个多样化的怪物家族。这个家族包括一只毛茸茸的棕色怪物,一只带有天线的光滑黑色怪物,一只斑点绿色怪物,还有一只带有小圆点的微小怪物,它们都在一个充满趣味的环境中互动。
一张以逼真的云朵形状拼写“SORA”字样的图片。
在一个装饰华丽的历史大厅里,一个巨大的海浪达到高峰并开始崩溃。两名冲浪者抓住这个机会,巧妙地驾驭着这个波浪的面前行驶。
扩展生成的视频
Sora还能够扩展视频,无论是向前还是向后。下面是四个视频,它们都是从一个生成的视频片段开始向后扩展的。结果是,这四个视频的开头都不同,但最终都会达到相同的结尾。
我们可以使用这种方法来前后扩展视频,以产生一个无缝的无限循环。
视频到视频编辑
扩散模型为根据文本提示编辑图像和视频提供了大量的方法。下面我们将其中一种方法SDEdit[^32]应用到Sora上。这个技术使得Sora能够零样本地转换输入视频的风格和环境。
视频连接
我们还可以使用Sora逐渐插值两个输入视频之间,创建完全不同主题和场景构图的视频之间的无缝过渡。在下面的示例中,中间的视频是左边和右边对应视频之间的插值结果。
图像生成能力
Sora还可以生成图像。我们通过在时空范围为一个帧的空间网格中排列高斯噪声的块来实现这一点。该模型可以生成不同大小的图像,分辨率高达2048x2048。
一张女性秋天的特写肖像照,极致细节,浅景深。
充满活力的珊瑚礁,繁盛着五彩斑斓的鱼类和海洋生物
以哑光绘画风格呈现的数字艺术作品,描绘了一只年轻的老虎在一棵苹果树下。作品细节精美,绚丽多彩。
一座被雪覆盖的山间村庄,拥有舒适的小木屋和北极光的展示。使用高精度和逼真的数码单反相机,以50mm f/1.2镜头拍摄。
新兴的模拟能力
我们发现,在大规模训练的视频模型中,出现了一些有趣的新兴能力。这些能力使得Sora能够模拟物理世界中的人、动物和环境的一些方面。这些特性在没有明确的对3D、物体等的归纳偏见的情况下出现,它们纯粹是规模现象。
三维一致性。 Sora能够生成具有动态摄像机运动的视频。随着摄像机的移动和旋转,人物和场景元素在三维空间中保持一致的运动。
长期连贯性和物体永久性。 视频生成系统面临的一个重要挑战是在采样长视频时保持时间上的一致性。我们发现Sora通常能够有效地模拟短期和长期依赖关系,尽管并不总是如此。例如,我们的模型可以在物体被遮挡或离开画面时保持人物、动物和物体的存在。同样,它可以在单个样本中生成同一角色的多个镜头,并在整个视频中保持它们的外观。
与世界互动。 Sora有时可以模拟对世界状态产生简单影响的行为。例如,一位画家可以在画布上留下持续存在的新笔触,或者一个人可以吃掉一个汉堡并留下咬痕。
模拟数字世界。 Sora还能够模拟人工过程,比如视频游戏。Sora可以同时以基本策略控制Minecraft中的玩家,同时以高保真度渲染世界及其动态。通过在提示中提到“Minecraft”,可以从Sora中引发这些能力。
这些能力表明,继续对视频模型进行扩展是开发高度能力的物理世界和数字世界以及其中的物体、动物和人的模拟器的有希望的路径。
讨论
目前,作为模拟器,Sora存在许多限制。例如,它不能准确地模拟许多基本交互的物理学,比如玻璃破碎。其他交互,比如吃东西,并不总是能正确地改变物体状态。我们在 我们的主页中详细列举了模型的其他常见故障模式,比如在长时间采样中出现的不连贯性或物体的突然出现。
我们相信,Sora目前的能力表明,继续对视频模型进行扩展是开发能力强大的物理世界和数字世界以及其中的物体、动物和人的模拟器的有希望的路径。
通过虚拟卡 WildCard 的方式来升级 GPT 4.0 最快了,大概2分钟就可以升级完成, 而且升级 GPT 4.0 价钱也不贵,虚拟卡一年10美元,GPT4 每个月也才 20美元。如果你觉得 GPT 4.0 对你可能有帮助,那就赶快来升级吧!
GPT-4.0 升级教程
相关文章:
【OpenAI Sora】开启未来:视频生成模型作为终极世界模拟器的突破之旅
这份技术报告主要关注两个方面:(1)我们的方法将各种类型的视觉数据转化为统一的表示形式,从而实现了大规模生成模型的训练;(2)对Sora的能力和局限性进行了定性评估。报告中不包含模型和实现细节…...
MVC 、DDD、中台、Java SPI(Service Provider Interface)
文章目录 引言I 单体架构DDD实现版本1.1 核心概念1.2 DDD四层架构规范1.3 案例1.4 请求转发流程II 领域服务调用2.1 菱形对称架构2.2 中台III Java SPI3.1 概念3.2 实现原理3.3 例子:本地SPI找服务see alsojava -cp</...
C++单例模式的实现
单例模式就是在整个程序运行期都只有一个实例。在代码实现方面,我们要限制new出多于一个对象这种情况的发生。而不是仅仅依靠无保障的约定。 目前大多数的编程语言的做法都是私有化构造函数,对外提供一个获取实例的接口。这样做的目的使实例的创建不能在…...
rust函数 stuct struct方法 关联函数
本文结合2个代码实例主要介绍了rust函数定义方法,struct结构体定义、struct方法及关联函数等相关基础知识。 代码1: main.rc #[derive(Debug)]//定义一个结构体 struct Ellipse {max_semi_axis: u32,min_semi_axis: u32, }fn main() {//椭圆࿰…...
浅谈基于中台模式的大数据生态体系的理解
这篇文章主要浅谈一下我对大数据生态体系建设的理解。 大数据生态系统为高并发,高吞吐,高峰值,高堆积等大规模数据的采集,处理,计算,存储,服务提供了完善的处理体系,致力于打造核心数…...
MySQL的锁机制
一:概述 锁是计算机协调多个进程或线程并发访问某一资源的机制(避免争抢); 在数据库中,除传统的计算资源(如CPU,RAM,I/O等)的争用以外,数据也是一种供许多用…...
已解决ImportError: cannot import name ‘PILLOW_VERSION‘异常的正确解决方法,亲测有效!!!
已解决ImportError: cannot import name PILLOW_VERSION异常的正确解决方法,亲测有效!!! 文章目录 问题分析 报错原因 解决思路 解决方法 总结 在Python项目开发中,依赖管理是保证项目正常运行的关键环节。然而&…...
力扣:300. 最长递增子序列
动态规划: 1. 先定义dp数组来表示在下标为i时最长递增子序列,先初始化一下每个下标的值为dp【i】1。同时我们要判断在下标i之前的最长的递增子序列为多少,在判断当前的下标i是否满足递增的条件满足的话就进行dp【i】的重新赋值。之后要更新接受的最长递…...
Swing程序设计(10)列表框,文本框,文本域,密码框
文章目录 前言一、列表框二、文本框(域) 1.文本框2.文本域三、密码框总结 前言 该篇文章简单介绍了Java中Swing组件里的列表框、文本框、密码框。 一、列表框 列表框(JList)相比下拉框,自身只是在窗体上占据固定的大小…...
【Java八股面试系列】JVM-常见参数设置
目录 堆内存相关 显式指定堆内存–Xms和-Xmx 显式新生代内存(Young Generation) 显式指定永久代/元空间的大小 垃圾收集相关 垃圾回收器 GC 日志记录 处理 OOM JDK监控和故障处理工具总结 堆内存相关 Java 虚拟机所管理的内存中最大的一块,Java 堆是所有线…...
【Python--Web应用框架大比较】
🚀 作者 :“码上有前” 🚀 文章简介 :Python 🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬 Django Django太重了,除了web框架,自带ORM和模板引擎,灵活和自由度不…...
Effective Objective-C 学习第三周
理解引用计数 Objective-C 使用引用计数来管理内存:每个对象都有个可以递增或递减的计数器。如果想使某个对象继续存活,那就递增其引用计数:用完了之后,就递减其计数。计数变为 0时,就可以把它销毁。 在ARC中…...
人工智能学习与实训笔记(四):神经网络之NLP基础—词向量
人工智能专栏文章汇总:人工智能学习专栏文章汇总-CSDN博客 本篇目录 四、自然语言处理 4.1 词向量 (Word Embedding) 4.1.1 词向量的生成过程 4.1.2 word2vec介绍 4.1.3 word2vec:skip-gram算法的实现 4.2 句向量 - 情感分析 4.2.1 LSTM (Long S…...
【教程】Kotlin语言学习笔记(一)——认识Kotlin(持续更新)
写在前面: 如果文章对你有帮助,记得点赞关注加收藏一波,利于以后需要的时候复习,多谢支持! 【Kotlin语言学习】系列文章 第一章 《认识Kotlin》 文章目录 【Kotlin语言学习】系列文章一、Kotlin介绍二、学习路径 一、…...
MySQL性能分析1
1、查看执行频次 查看当前数据库的INSERT,UPDATE,DELETE,SELECT的访问频次,得到当前数据库是以插入,更新和删除为主还是以查询为主,如果是以插入,更新和删除为主的话,那么优化比重可以轻一点儿。 语法: …...
四、案例 - Oracle数据迁移至MySQL
Oracle数据迁移至MySQL 一、生成测试数据表和数据1.在Oracle创建数据表和数据2.在MySQL创建数据表 二、生成模板文件1.模板文件内容2.模板文件参数详解2.1 全局设置2.2 数据读取(Reader)2.3 数据写入(Writer)2.4 性能设置 三、案例…...
ABC340 A-F题解
文章目录 A题目AC Code: B题目AC Code: C题目AC Code: D题目AC Code: E题目思路做法时间复杂度AC Code: F题目思路AC Code: A 题目 模拟即可,会循环都能写。 AC Code: #include …...
微软 CMU - Tag-LLM:将通用大语言模型改用于专业领域
文章目录 一、前言二、主要内容三、总结 🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 一、前言 论文地址:https://arxiv.org/abs/2402.05140 Github 地址:https://github.com/sjunhongshen/Tag-LLM 大语言模型(…...
Kafka集群安装与部署
集群规划 准备工作 安装 安装包下载:链接:https://pan.baidu.com/s/1BtSiaf1ptLKdJiA36CyxJg?pwd6666 Kafka安装与配置 1、上传并解压安装包 tar -zxvf kafka_2.12-3.3.1.tgz -C /opt/moudle/2、修改解压后的文件名称 mv kafka_2.12-3.3.1/ kafka…...
C++初阶(十一) list
一、list的介绍及使用 1.1 list的介绍 list的文档介绍 1. list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。 2. list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点…...
图像卷积、步长、填充、特征图、多通道卷积、权重共享、感受野、池化
图像卷积、步长、填充、特征图、多通道卷积、权重共享、感受野、池化 卷积神经网络的一些基本概念:图像卷积、步长、填充、特征图、多通道卷积、权重共享、感受野、池化 1.图像卷积、步长、填充 图像卷积:卷积核矩阵在一个原始图像矩阵上 “从上往下、…...
CMake进行C/C++与汇编混合编程
1. 前提 这篇文章记录一下怎么用CMake进行项目管理, 并用C/C和汇编进行混合编程, 为了使用这项技术, 必须在VS的环境中安装好cmake组件 由于大部分人不会使用C/C与汇编进行混合编程的情况。所以这篇文章并不适用于绝大部分人不会对其中具体细节进行过多叙述。只是做一些简单的…...
缓存预热!真香
预热一般指缓存预热,一般用在高并发系统中,为了提升系统在高并发情况下的稳定性的一种手段。 缓存预热是指在系统启动之前或系统达到高峰期之前,通过预先将常用数据加载到缓存中,以提高缓存命中率和系统性能的过程。缓存预热的目…...
VS中设置#define _CRT_SECURE_NO_WARNINGS的原因和设置方式
原因: 在编译老的用C语言的开源项目的时候,可能因为一些老的.c文件使用了strcpy,scanf等不安全的函数,而报警告和错误,而导致无法编译通过。 解决方案: 我们有两种解决方案: 1、在指定的源文件的开头定…...
【网站项目】155在线考试与学习交流网页平台
🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板ÿ…...
解决IDEA的Project无法正常显示的问题
一、问题描述 打开IDEA,结果发现项目结构显示有问题: 二、解决办法 File -> Project Structure… -> Project Settings (选Modules),然后导入Module 结果: 补充: IDEA提示“The imported module settings a…...
CDF和PDF的比较
以下内容来自ChatGPT,科技改变生活 Cumulative Distribution Function (CDF)(累积分布函数)和 Probability Density Function (PDF)(概率密度函数)是统计学和概率论中两个重要的概念,用于描述随机变量的性…...
编译基本过程 预处理器
编译基本过程 源代码(main.c)->预处理器(cpp)->编译器(gcc/clang/msvc)->汇编器(as)->链接器(ld)->可执行文件(main.exe) 预处理器 C语言中预处理器:执行预处理命令(文件包含、宏替换、条件编译)处理注释(将所有注释替换为空格)处理续行符(将所有…...
模拟算法.
1.什么是模拟 在信息奥赛中,有一类问题是模拟一个游戏的对弈过程或者模拟一项任务的操作过程.比如乒乓球在比赛中模拟统计记分最终判断输赢的过程等等,这些问题通常很难通过建立数学模型用特定的算法来解决因为它没有一种固定的解法,需要深刻理解出题者对过程的解释一般只能采…...
ClickHouse--10--临时表、视图、向表中导入导出数据
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.临时表1.1 特征1.2 创建一个临时表 2.视图2.1 普通视图2.2 物化视图 3.向表中导入导出数据3.1 案例 1.临时表 1.1 特征 ClickHouse 支持临时表,临时表…...
Python一些可能用的到的函数系列124 GlobalFunc
说明 GlobalFunc是算网的下一代核心数据处理基础。 算网是一个分布式网络,为了能够实现真的分布式计算(加快大规模任务执行效率),以及能够在很长的时间内维护不同版本的计算方法,需要这样一个对象/服务来支撑。Globa…...
python中线程/线程池,进程/进程池的创建
创建子线程 # 创建子线程t1 threading.Thread(targetjob,args(1,))# 执行子线程t1.start()# 等待子线程执行print("waiting threading")t1.join()print("threading done")创建子进程 # 创建子进程p1 multiprocessing.Process(targetjob,args(1,),name&qu…...
【c++】vector的增删查改
1.先定义一个类对象vector 为了防止和库里面发生冲突,定义一个命名空间,将类对象放在命名空间 里面 #include<iostream> using namespace std; namespace zjw {class vector {public:private:}; }2.定义变量,需要一个迭代器ÿ…...
【研究生复试】计算机软件工程人工智能研究生复试——资料整理(速记版)——JAVA
1、JAVA 2、计算机网络 3、计算机体系结构 4、数据库 5、计算机租场原理 6、软件工程 7、大数据 8、英文 自我介绍 1. Java 1. 和 equals的区别 比较基本数据类型是比较的值,引用数据类型是比较两个是不是同一个对象,也就是引用是否指向同 一个对象&…...
JVM-JVM中对象的生命周期
申明:文章内容是本人学习极客时间课程所写,文字和图片基本来源于课程资料,在某些地方会插入一点自己的理解,未用于商业用途,侵删。 原资料地址:课程资料 对象的创建 常量池检查:检查new指令是否能在常量池…...
RegExp正则表达式左限定右限定左右限定,预查询,预查寻,断言 : (?<= , (?= , (?<! , (?!
RegExp正则表达式左限定右限定左右限定,预查询,预查寻,断言 : (?< , (? , (?<! , (?! 有好多种称呼 (?< , (? , (?<! , (?! 有好多种称呼 , 我称为: 左限定, 右限定, 左否定, 右否定 (?<左限定) (?右限定)(?<!左否定) (?!右限定) 再…...
相机图像质量研究(30)常见问题总结:图像处理对成像的影响--重影
系列文章目录 相机图像质量研究(1)Camera成像流程介绍 相机图像质量研究(2)ISP专用平台调优介绍 相机图像质量研究(3)图像质量测试介绍 相机图像质量研究(4)常见问题总结:光学结构对成像的影响--焦距 相机图像质量研究(5)常见问题总结:光学结构对成…...
问题记录——c++ sort 函数 和 严格弱序比较
引出 看下面这段cmp函数的定义 //按照vector第一个元素升序排序 static bool cmp(const vector<int>& a, const vector<int>& b){return a[0] < b[0]; }int eraseOverlapIntervals(vector<vector<int>>& intervals) {//按区间左端排序…...
《Go 简易速速上手小册》第9章:数据库交互(2024 最新版)
文章目录 9.1 连接数据库 - Go 语言的海底宝藏之门9.1.1 基础知识讲解安装数据库驱动数据库连接 9.1.2 重点案例:用户信息管理系统准备数据库Go 代码实现连接数据库添加新用户查询用户信息用户登录验证主函数 9.1.3 拓展案例 1:批量添加用户准备数据库Go…...
redis的hash数据结构底层简记
hash:k和v都是string的hash表。 HSET(设置集合数据,4.0之前只能设置1个,之后可以设置多个),HSETNX(若k不存在则设置对应v),HDEL(删除指定kv,可以一次删除多个)…...
清除Django的管理员admin站点中“Recent Actions“最近活动面板上的所有信息
清除Django的管理员admin站点中"Recent Actions"最近活动面板上的所有信息 本文主要介绍了如何清除Django的管理员admin站点中"Recent Actions"最近活动面板上的所有信息 操作步骤如下 进入Django项目目录中运行代python manage.py shell进入Django shell…...
【JVM篇】ThreadLocal中为什么要使用弱引用
文章目录 🍔ThreadLocal中为什么要使用弱引用⭐总结 🍔ThreadLocal中为什么要使用弱引用 ThreadLocal可以在线程中存放线程的本地变量,保证数据的线程安全 ThreadLocal是这样子保存对象的: 在每个线程中,存放了一个…...
Stable Diffusion教程——stable diffusion基础原理详解与安装秋叶整合包进行出图测试
前言 在2022年,人工智能创作内容(AIGC)成为了AI领域的热门话题之一。在ChatGPT问世之前,AI绘画以其独特的创意和便捷的创作工具迅速走红,引起了广泛关注。随着一系列以Stable Diffusion、Midjourney、NovelAI等为代表…...
【JavaEE】_线程与多线程的创建
目录 1. 线程的概念 2. 创建与使用多线程 2.1 方式1:继承Thread类 2.2 方式2: 实现Runnable接口 2.3 以上两种创建线程方式的对比 3. 多线程的优势-增加运行速度 1. 线程的概念 进程的存在是由于系统的多任务执行需求,这也要求程序员进…...
【前端工程化面试题】如何优化提高 webpack 的构建速度
使用最新版本的 Webpack 和相关插件: 每个新版本的 Webpack 都会带来性能方面的改进和优化,因此始终确保你在使用最新版本。同时,更新你的相关插件也是同样重要的。 使用DllPlugin动态链接库: 使用DllPlugin和DllReferencePlugin来将第三方库的代码进行…...
免费chatgpt使用
基本功能如下: https://go.aigcplus.cc/auth/register?inviteCode3HCULH2UD...
OpenCV识别人脸案例实战
使用级联函数 基本流程 函数介绍 在OpenCV中,人脸检测使用的是cv2.CascadeClassifier.detectMultiScale()函数,它可以检测出图片中所有的人脸。该函数由分类器对象调用,其语法格式为: objects cv2.CascadeClassifier.detectMul…...
VOSK——离线语音库
文章目录 识别函数调用添加自定义热词表1. SetWords2. SetLatticeWords3. SetPartialWords使用示例注意1. SetMaxAlternatives2. SetNLSML3. SetSpkModel4. SetGrammar使用示例注意SetLogLevel示例用法注意事项 识别函数调用 在使用Vosk库进行语音识别时,PartialRe…...
ELAdmin 隐藏添加编辑按钮
使用场景 做了一个监控模块,数据都是定时生成的,所以不需要手动添加和编辑功能。 顶部不显示 可以使用 true 或者 false 控制现实隐藏 created() {this.crud.optShow {add: false,edit: false,del: true,download: true,reset: true}},如果没有 crea…...
浅谈Websocket
由于 http 存在⼀个明显的弊端(消息只能有客户端推送到服务器端,⽽服务器端不能主动推送到客户端),导致如果服务器如果有连续的变化,这时只能使⽤轮询,⽽轮询效率过低,并不适合。于是 WebSocket 被发明出来 WebSocket 是⼀种在 Web 应⽤程序中实现双向通信的协议。与传…...