CN116567405B - 一种画面变化的识别与拍摄方法、设备及介质 - Google Patents
一种画面变化的识别与拍摄方法、设备及介质 Download PDFInfo
- Publication number
- CN116567405B CN116567405B CN202310813729.XA CN202310813729A CN116567405B CN 116567405 B CN116567405 B CN 116567405B CN 202310813729 A CN202310813729 A CN 202310813729A CN 116567405 B CN116567405 B CN 116567405B
- Authority
- CN
- China
- Prior art keywords
- image
- video data
- preset
- frame
- image set
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000008859 change Effects 0.000 title claims abstract description 15
- 238000003860 storage Methods 0.000 claims abstract description 14
- 238000006073 displacement reaction Methods 0.000 claims abstract description 12
- 230000006870 function Effects 0.000 claims description 32
- 239000011159 matrix material Substances 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000003139 buffering effect Effects 0.000 claims description 2
- 238000007781 pre-processing Methods 0.000 claims description 2
- 238000012546 transfer Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 12
- 239000002699 waste material Substances 0.000 abstract description 3
- 238000010191 image analysis Methods 0.000 description 16
- 238000004590 computer program Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000010606 normalization Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000009928 pasteurization Methods 0.000 description 4
- 239000011800 void material Substances 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 241000695274 Processa Species 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241000282836 Camelus dromedarius Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- NUHSROFQTUXZQQ-UHFFFAOYSA-N isopentenyl diphosphate Chemical compound CC(=C)CCO[P@](O)(=O)OP(O)(O)=O NUHSROFQTUXZQQ-UHFFFAOYSA-N 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/61—Control of cameras or camera modules based on recognised objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种画面变化的识别与拍摄方法、设备及介质,涉及图像数据处理技术领域,方法包括:获取视频数据,根据预先设置的缓存帧数对视频数据进行抽取和缓存,以得到图像集;确定图像集中的目标物,并确定图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据目标物的位移得到图像相似度;将图像相似度与预先设置的阈值进行比较;若相似度小于阈值,则将缓存的图像集删除,并根据预先设置的录制时间开始录制新的视频数据。本申请利用OpenCV把要比较的图片转变成直方图,图像相似度比较,分析图像之间的关系判断物体是否位移,从而判断是否继续进行视频录制。大大节省了存储成本,减少了不必要的浪费。
Description
技术领域
本申请涉及图像数据处理技术领域,尤其涉及一种画面变化的识别与拍摄方法、设备及介质。
背景技术
相机功能的开发使用涉及到各种设备的适配问题,需要在代码中添加一堆的设备专属代码,为此,CameraX正是为了简化开发工作而推出来的库。CameraX是一个Jetpack库,旨在帮助更轻松地开发相机应用。CameraX提供了一致性且易于使用的API,适用于绝大多数的设备。目前市面上的CameraX提供了预览、图片分析、图片拍摄、视频拍摄等几种功能,这些都是相机开发里面常用的功能。用户可以用很少的代码搭建出面向特定场景的相机应用,CameraX引入了UseCase的概念,以完成各种相机能力。UseCase有利于功能模块的解耦,聚焦特定领域进行功能开发。CameraX默认提供了几个常用的UseCase实现,能够满足大多数场景下的使用。
OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视觉处理开源软件库,支持与计算机视觉和机器学习相关的众多算法,以BSD许可证授权发行,可以在商业和研究领域中***。OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程序,该程序库也可以使用英特尔公司的IPP进行加速处理。
随着视频拍摄技术的广泛应用,用户对智能化拍摄的需求越来越高。目前市面上的视频拍摄***大部分为每天24小时运行,所采用的相机装置也是每天24小时全开。由于实际在调用视频数据时,仅仅需要调取视频内物体或人物的活动画面,大部分的视频数据并没有什么实际作用,同时还占用了大量的存储空间,造成了不必要的浪费。
发明内容
为了解决上述问题,本申请提出了一种画面变化的识别与拍摄方法,包括:获取视频数据,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集;确定所述图像集中的目标物,并确定所述图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据所述目标物的位移得到图像相似度;将所述图像相似度与预先设置的阈值进行比较;若所述相似度小于所述阈值,则将缓存的所述图像集删除,并根据预先设置的录制时间开始录制新的视频数据。
在一个示例中,其他帧图像分别与第一帧图像进行对比之前,所述方法还包括:将进行对比的两张图像进行预处理,以将图像转化为直方图;对所述直方图进行均衡化。
在一个示例中,根据所述目标物的位移得到图像相似度,具体包括:确定进行对比的两张直方图,并通过compareHist函数确定所述两张直方图对应的目标物像素点;将所述目标物像素点进行对比,以得到所述图像相似度。
在一个示例中,获取视频数据,具体包括:确定视频引擎,并确定所述视频引擎的视频编码器和音频编码器;通过所述视频编码器获取视频流,并通过所述音频编码器获取音频流;确定媒体复用器,通过所述媒体复用器将所述音频流和所述视频流进行压缩,以得到所述视频数据,并将所述视频数据写入预先设置的磁盘。
在一个示例中,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集,具体包括:确定预先设置的图像缓冲区,将所述视频数据放入所述图像缓冲区中;将所述图像缓冲区中的所述视频数据进行图像抽取,以得到所述视频数据的全部帧图像;根据预先设置的缓存帧数对所述全部帧图像进行抽取,以得到所述图像集。
在一个示例中,所述方法还包括:确定预先设置的矩阵参数,根据所述矩阵参数建立矩阵,其中,所述矩阵参数包括矩阵行数,矩阵列数,数据类型,初始值;对所述图像集中每一帧的图像进行转载;将转载后的所述图像进行分割,其中,所述图像分割为三个单通道图像;将分割后的所述图像输入所述矩阵,以得到向量;根据所述向量生成直方图。
在一个示例中,所述方法还包括:根据预先设置的图像类型将所述图像集中每一帧的图像进行类型转变,以得到HSV图像;根据所述HSV图像生成直方图,并根据预先设置的范围对所述直方图进行归一化;通过compareHist函数对归一化后的所述直方图进行对比,以得到所述图像相似度。
在一个示例中,所述方法还包括:根据预先设置的预览帧数对所述视频数据进行抽取和缓存,以得到预览图像集;根据预先设置的更新时间删除历史预览图像集,并抽取新的预览图像集。
另一方面,本申请还提出了一种画面变化的识别与拍摄设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述一种画面变化的识别与拍摄设备能够执行:获取视频数据,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集;确定所述图像集中的目标物,并确定所述图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据所述目标物的位移得到图像相似度;将所述图像相似度与预先设置的阈值进行比较;若所述相似度小于所述阈值,则将缓存的所述图像集删除,并根据预先设置的录制时间开始录制新的视频数据。
另一方面,本申请还提出了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令被处理器执行时,使得处理器执行:获取视频数据,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集;确定所述图像集中的目标物,并确定所述图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据所述目标物的位移得到图像相似度;将所述图像相似度与预先设置的阈值进行比较;若所述相似度小于所述阈值,则将缓存的所述图像集删除,并根据预先设置的录制时间开始录制新的视频数据。
本申请通过CameraX实现视频录制功能,能够自动开启视频录制。本申请利用OpenCV把要比较的图片转变成直方图,图像相似度比较,分析图像之间的关系判断物体是否位移,从而判断是否继续进行视频录制。大大节省了存储成本,减少了不必要的浪费。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例中一种画面变化的识别与拍摄方法的流程示意图;
图2为本申请实施例中一种画面变化的识别与拍摄设备的示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
如图1所示,为了解决上述问题,本申请实施例提供的一种画面变化的识别与拍摄方法,方法包括:
S101、获取视频数据,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集。
相机启动后,开始调用摄像头进行拍摄,获取拍摄的视频数据。获取到视频数据后,根据预先设置 缓存帧数抽取图像进行缓存,以得到图像集。例如,缓存10帧图像。
在一个实施例中,CameraX作为视频捕获架构,通常会录制视频流和音频流,对其进行压缩,对这两个流进行多路复用,然后将生成的流写入磁盘。在 CameraX中,用于视频捕获的解决方案是VideoCapture。VideoCapture API会对复杂的捕获引擎进行抽象化处理,为应用提供更加简单且直观的API。其中,API包括两个参数:***SurfaceProvider,音频来源AudioSource,还包括用于对视频和音频进行编码和压缩的两个编码器,包括用于对两个流进行多路复用的媒体复用器,以及用于写出结果的文件保存器。使用VideoCapture API时,若将CameraX VideoCapture用例集成到应用中,需要绑定VideoCapture,准备和配置录制,开始和控制运行时录制。
S102、确定所述图像集中的目标物,并确定所述图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据所述目标物的位移得到图像相似度。
图像集的每一帧与第一帧进行图像对比。通过OpenCV的calcHist函数对要做对比的两张图进行预处理,将图片转化为直方图,使用函数void equalizeHist可进行直方图均衡化。例如,calcHist函数详细信息为void calcHist(const Mat images, int nimages,const int channels, InputArray mask, OutputArray hist, int dims, const inthistSize, const f?loat* ranges, bool uniform=true, and bool accumulate=false).
其中,const Mat* images表示集合中第一幅图像的地址,可用于处理一批图像。int nimages表示原图像的数量。const int* channels表示用来计算直方图的通道列表,通道数从0到2。InputArray mask这个参数是一个可选项mask,用来指示直方图中图像像素的个数。OutputArray hist是输出直方图。int dims:用于指示直方图的维数。const int*histSize:是每一维度上直方图大小的数组。const f?loat** ranges:是每一维度上直方图bin边界维度数组的数组。bool uniform=true:默认情况下,该布尔值为true。表示直方图是均匀分布的。bool accumulate=false:默认情况下,Boolean值为false。表示直方图是不累加的。
确定要进行对比的目标物,通过compareHist函数对目标物进行对比,具体为voidcompareHist(InputArray histImage1, InputArray histImage2, method)。其中,histImage1表示第一帧图像的直方图,histImage2表示要与第一帧图像对比的直方图。进行两个图像直方图比较。通过metric函数用于计算两个直方图之间的匹配情况。
在一个实施例中,在图片拍摄时,不仅需要简单的相机手动控制功能,还需要自动白平衡、自动曝光和自动对焦功能。调用方负责决定如何使用拍摄的照片,具体选项包括:takePicture(Executor, OnImageCapturedCallback),表示此方法为拍摄的图片提供内存缓冲区;takePicture(OutputFileOptions, Executor, OnImageSavedCallback),表示此方法将拍摄的图片保存到提供的文件位置。运行ImageCapture的可自定义执行程序有两种类型:回调执行程序和IO执行程序。回调执行程序是takePicture函数的参数。它用于执行用户提供的OnImageCapturedCallback()。如果调用方选择将图片保存到文件位置,可以指定执行程序以执行IO。如需设置IO执行程序,则调用ImageCapture.Builder.setIoExecutor(Executor)。如果执行程序不存在,则默认CameraX为任务的内部IO执行程序。
在一个实施例中,在进行图像预览时,应用需要添加预览,使用PreviewView,PreviewView这是一种可以剪裁、缩放和旋转以确保正确显示的View。当相机处于活动状态时,图片预览会流式传输到PreviewView中的Surface。例如,配置CameraXConfig.Provider,将PreviewView添加到布局,请求ProcessCameraProvider,在创建View 时,检查ProcessCameraProvider,选择相机并绑定生命周期和用例。
在一个实施例中,对图像进行分析时,应用提供可供CPU访问的图像,对这些图像执行图像处理、计算机视觉或机器学习推断。应用会实现对每个帧运行的analyze()函数方法。例如,在应用中使用图像分析,要构建ImageAnalysis用例;ImageAnalysis可将分析器,即图像使用方连接到CameraX,即图像生成方。应用可以使用ImageAnalysis.Builder来构建ImageAnalysis对象。借助ImageAnalysis.Builder,应用可以进行以下配置:第一,图像输出参数,包括格式、Resolution和AspectRatio、旋转角度、目标名称。格式上,CameraX可通过 setOutputImageFormat(int)支持YUV_420_888和RGBA_8888。默认格式为 YUV_420_888。对于Resolution和AspectRatio,可以设置其中一个参数,但不能同时设置这两个值。目标名称表示使用该参数进行调试。第二,图像流控制,包括后台执行器、图像队列深度、背压策略,其中图像队列深度包括分析器和CamaraX。
创建ImageAnalysis.Analyzer分析器时。应用可以通过实现ImageAnalysis.Analyzer接口并替换analyze(ImageProxy image)来创建分析器。在每个分析器中,应用都会收到一个ImageProxy,它是Media.Image的封装容器。可以使用ImageProxy.getFormat()函数来查询图像格式。该格式使用应用通过ImageAnalysis.Builder提供的以下值之一表示,包括:第一,如果应用请求了OUTPUT_IMAGE_FORMAT_RGBA_8888,则为ImageFormat.RGBA_8888;第二,如果应用请求了OUTPUT_IMAGE_FORMAT_YUV_420_888,则为ImageFormat.YUV_420_888。
在分析器中,应用应执行以下操作:尽快分析给定的帧,最好在给定的帧速率时间限制内进行分析,例如,如果帧速率为30 fps,则用时应低于32 毫秒。如果应用无法足够快地分析帧,请考虑采用一种受支持的丢帧机制。通过调用ImageProxy.close()函数将ImageProxy发布到CameraX。不应调用已封装Media.Image的close函数,即Media.Image.close()函数。应用可以直接使用ImageProxy中的已封装Media.Image。不要对已封装的图像调用Media.Image.close(),因为这会破坏CameraX中的图像分享机制;改为使用ImageProxy.close()将底层Media.Image发布到CameraX。
将分析器设为ImageAnalysis。创建分析器后,使用ImageAnalysis.setAnalyzer()注册该分析器以开始分析。完成分析后,使用ImageAnalysis.clearAnalyer()移除已注册的分析器。只能配置一个活跃分析器用于分析图像。调用ImageAnalysis.setAnalyzer()会替换已注册的分析器(如果已存在该分析器)。应用可以在绑定用例之前或之后随时设置新的分析器。
将生命周期所有者、相机选择器和ImageAnalysis用例绑定到生命周期。绑定后,CameraX会立即将图像发送到已注册的分析器。完成分析后调用ImageAnalysis.clearAnalyzer()或解除绑定ImageAnalysis用例以停止分析。
在一个实施例中,在图像处理上,直方图是图像信息统计的有力工具。其实也就是统计一幅图某个亮度像素数量。直方图分B,G,R计算,利用split函数进行分通道显示,计算各个通道的直方图分布特点。分通道是直接使用的r,g,b=im1_sp.split()的,因只对RGBmode的图像有效,所以im1_sp = im1.convert("RGB")先进行了模式转换。一张RGB彩色图像经过通道分离,获得三张单通道灰度图像,即python中定义的“L”mode的图像,然后对每一个灰度图绘制直方图。直方图绘制是通过pix = r.load()函数把图像的像素数据进行存储,然后在256级区间进行累加统计,最后使用draw.line函数绘制的。
在一个实施例中,具体过程为,第一创建矩阵;指定矩阵大小,指定数据类型,设置初始值:Mat image1(100,100,CV_8U, 100)。这里包含四个参数:矩阵行数,矩阵列数,数据类型,初始值。第二,装载原图像;使用imread与imwrite两个函数进行图像读写。第三,使用OpenCV函数split将图像分割成3个单通道图像。第四,输入的是要被分割的图像,包含3个通道,输出的则是Mat类型的的向量。第五,对每个通道配置直方图设置。例如,将彩色图像,分成b、g、r,3个单通道图像。方便对BGR三个通道分别进行操作。调用calcHist函数,传入相关参数,具体为输入图像指针;输入图像的个数;统计直方图的第几通道;输入mask,可选,不用,填写Mat();输出的直方图数据Mat;确定维数,灰度图是1,彩色图一般是3;确定直方图级数,0~255,填256。指的是直方图分成多少个区间,就是bin的个数;确定值域范围,{0~256}统计像素值得区间;确定是否对得到的直方图数组进行归一化处理,默认为true一般不改。在多个图像时,是否累计计算像素值的个数,默认为false一般不改。第六,创建显示直方图的画布,在画直方图之前,先使用normalize归一化直方图,这样直方图bin中的值就被缩放到指定范围。例如,CV EXPORTS W void normalize(InputArray src,InputOutputArray dst,double alpha = 1,double beta = int norm type = NORM L2,int dtype = -1.InputArray mask = noArray())。其中,InputArray src为输入图像数组;InputOutputArray dst为输出图像数组(可与输入数组相同);double alpha规范化的最小值normalization模式;double beta为规范化的最大值;int norm_type为归一化的类型,可以有以下的取值:NORM_MINMAX:数组的数值被平移或缩放到一个指定的范围,线性归一化,一般较常用;NORM_INF:此类型的定义没有查到,根据OpenCV 1的对应项,可能是归一化数组的C-范数(绝对值的最大值);NORM_L1:归一化数组的L1-范数(绝对值的和);NORM_L2:归一化数组的(欧几里德)L2-范数。int dtype为负数时,输出数组的type与输入数组的type相同;mask为操作掩膜,用于指示函数是否仅仅对指定的元素进行操作。第七,最后生成直方图。
S104、若所述相似度小于所述阈值,则将缓存的所述图像集删除,并根据预先设置的录制时间开始录制新的视频数据。
两张图像得到的相似度的范围在0~1之间。若相似度小于阈值,则代表目标物进行了位移。清空缓存暂停抓取,开始录制新的视频,录制3s视频后保存视频,录制完成1s后重新开始识别。
在一个实施例中,对输入的两张图像进行直方图均衡化及直方图计算步骤后,可以对两个图像的直方图进行对比。例如,若有两张图像,并且这两张图像的直方图一样,或者有极高的相似度,那么在一定程度上,我们可以认为这两幅图是一样的,这就是直方图比较的应用之一。要比较两个直方图,即H1和H2,首先必须要选择一个衡量直方图相似度的对比标准,在此设为d(H1,H2)。选择直方图比较方法,包括相关性比较(Correlation)、卡方比较(Chi-Square)、十字交叉性(Intersection)、巴氏距离(Bhattacharyya distance)。
在直方图相似度计算中,巴氏距离获得的效果最好,但计算是最为复杂的。巴氏距离的计算结果,其值完全匹配为1,完全不匹配则为0。在统计学中,巴氏距离用于测量两离散概率分布。它常在分类中测量类之间的可分离性。
在一个实施例中,直方图比较的具体过程为,第一,加载图像,使用imread与imwrite两个函数进行图像读写。第二,将图像从BGR空间转化为HSV空间,以将BGR图像转换为HSV图像,并分别显示H、S、V。第三,计算直方图并归一化处理,由于统计的灰度图数目与图像的尺寸具有直接关系,因此如果以灰度值数目作为最终统计结果,图像经过尺寸缩放后的图像直方图会产生巨大变化。直方图可以用来表示图像的明亮程度,从理论上看,缩放前后的图像具有大志相似的直方图分布特性,因此用灰度值的数目作为统计结果具有一定的局限性。为了减小这一局限性,可以使用用某个灰度值在所有像素中所占的比例来表示灰度值数目的多少,通过归一化可以保证每个灰度值的统计结果都在0%~100%之间。需要注意的是,在数据类型为uint8的图像中灰度值有256种平均每个像素的灰度值所占比例为0.39%,这个比例非常小,因此为了更加直观地绘制直方图,通常需要将比例扩大一定的倍数。还有一种常用的归一化方法是寻找统计结果种的最大数值,把所有的结果除以这个最大值,以将数据都归一化至0~1。在OpenCV4中可以使用cv.normalize()函来实现图像的归一化处理。第四,通过compareHist()函数进行直方图比较。compareHist()函数共有三个参数,包括输入图像、输出图像、比较方法。其中,比较方法的可以选择上述的四种直方图比较方法,在OpenCV中,每个直方图比较方法的名字分别为:Correlation ( CV_COMP_CORREL);Chi-Square ( CV_COMP_CHISQR );Intersection ( CV_COMP_INTERSECT );Bhattacharyya 距离( CV_COMP_BHATTACHARYYA )。如果两幅图像完全一致,则计算值为1;如果两幅图像的直方图完全不相关,则计算值为0。
如图2所示,本申请实施例还提供了一种画面变化的识别与拍摄设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述一种画面变化的识别与拍摄设备能够执行:
获取视频数据,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集;
确定所述图像集中的目标物,并确定所述图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据所述目标物的位移得到图像相似度;
将所述图像相似度与预先设置的阈值进行比较;
若所述相似度小于所述阈值,则将缓存的所述图像集删除,并根据预先设置的录制时间开始录制新的视频数据。
本申请实施例还提供了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
获取视频数据,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集;
确定所述图像集中的目标物,并确定所述图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据所述目标物的位移得到图像相似度;
将所述图像相似度与预先设置的阈值进行比较;
若所述相似度小于所述阈值,则将缓存的所述图像集删除,并根据预先设置的录制时间开始录制新的视频数据。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种画面变化的识别与拍摄方法,其特征在于,包括:
获取视频数据,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集;
确定所述图像集中的目标物,并确定所述图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据所述目标物的位移得到图像相似度;
将所述图像相似度与预先设置的阈值进行比较;
若所述相似度小于所述阈值,则将缓存的所述图像集删除,并根据预先设置的录制时间开始录制新的视频数据。
2.根据权利要求1所述的方法,其特征在于,其他帧图像分别与第一帧图像进行对比之前,所述方法还包括:
将进行对比的两张图像进行预处理,以将图像转化为直方图;
对所述直方图进行均衡化。
3.根据权利要求2所述的方法,其特征在于,根据所述目标物的位移得到图像相似度,具体包括:
确定进行对比的两张直方图,并通过compareHist函数确定所述两张直方图对应的目标物像素点;
将所述目标物像素点进行对比,以得到所述图像相似度。
4.根据权利要求1所述的方法,其特征在于,获取视频数据,具体包括:
确定视频引擎,并确定所述视频引擎的视频编码器和音频编码器;
通过所述视频编码器获取视频流,并通过所述音频编码器获取音频流;
确定媒体复用器,通过所述媒体复用器将所述音频流和所述视频流进行压缩,以得到所述视频数据,并将所述视频数据写入预先设置的磁盘。
5.根据权利要求1所述的方法,其特征在于,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集,具体包括:
确定预先设置的图像缓冲区,将所述视频数据放入所述图像缓冲区中;
将所述图像缓冲区中的所述视频数据进行图像抽取,以得到所述视频数据的全部帧图像;
根据预先设置的缓存帧数对所述全部帧图像进行抽取,以得到所述图像集。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定预先设置的矩阵参数,根据所述矩阵参数建立矩阵,其中,所述矩阵参数包括矩阵行数,矩阵列数,数据类型,初始值;
对所述图像集中每一帧的图像进行转载;
将转载后的所述图像进行分割,其中,所述图像分割为三个单通道图像;
将分割后的所述图像输入所述矩阵,以得到向量;
根据所述向量生成直方图。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据预先设置的图像类型将所述图像集中每一帧的图像进行类型转变,以得到HSV图像;
根据所述HSV图像生成直方图,并根据预先设置的范围对所述直方图进行归一化;
通过compareHist函数对归一化后的所述直方图进行对比,以得到所述图像相似度。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据预先设置的预览帧数对所述视频数据进行抽取和缓存,以得到预览图像集;
根据预先设置的更新时间删除历史预览图像集,并抽取新的预览图像集。
9.一种画面变化的识别与拍摄设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述一种画面变化的识别与拍摄设备能够执行:
获取视频数据,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集;
确定所述图像集中的目标物,并确定所述图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据所述目标物的位移得到图像相似度;
将所述图像相似度与预先设置的阈值进行比较;
若所述相似度小于所述阈值,则将缓存的所述图像集删除,并根据预先设置的录制时间开始录制新的视频数据。
10.一种非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令被处理器执行时,使得处理器执行:
获取视频数据,根据预先设置的缓存帧数对所述视频数据进行抽取和缓存,以得到图像集;
确定所述图像集中的目标物,并确定所述图像集的第一帧图像,将其他帧图像分别与第一帧图像进行对比,以根据所述目标物的位移得到图像相似度;
将所述图像相似度与预先设置的阈值进行比较;
若所述相似度小于所述阈值,则将缓存的所述图像集删除,并根据预先设置的录制时间开始录制新的视频数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310813729.XA CN116567405B (zh) | 2023-07-05 | 2023-07-05 | 一种画面变化的识别与拍摄方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310813729.XA CN116567405B (zh) | 2023-07-05 | 2023-07-05 | 一种画面变化的识别与拍摄方法、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116567405A CN116567405A (zh) | 2023-08-08 |
CN116567405B true CN116567405B (zh) | 2023-09-12 |
Family
ID=87491832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310813729.XA Active CN116567405B (zh) | 2023-07-05 | 2023-07-05 | 一种画面变化的识别与拍摄方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116567405B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1906934A (zh) * | 2004-06-10 | 2007-01-31 | 佳能株式会社 | 摄像设备 |
WO2007053656A2 (en) * | 2005-10-31 | 2007-05-10 | Searete Llc | Capturing selected image objects |
US9706102B1 (en) * | 2015-12-16 | 2017-07-11 | Amazon Technologies, Inc. | Enhanced images associated with display devices |
CN108563651A (zh) * | 2017-12-19 | 2018-09-21 | 深圳云天励飞技术有限公司 | 一种多视频的目标搜索方法、装置及设备 |
CN112866652A (zh) * | 2017-06-08 | 2021-05-28 | 三菱电机株式会社 | 影像信息存储装置 |
CN114187568A (zh) * | 2021-12-14 | 2022-03-15 | 杭州海康威视***技术有限公司 | 道路标牌破损检测方法、装置及存储介质 |
CN114372166A (zh) * | 2021-12-03 | 2022-04-19 | 浙江大华技术股份有限公司 | 一种图像管理的方法及装置 |
CN114973098A (zh) * | 2022-06-13 | 2022-08-30 | 乐知未来科技(深圳)有限公司 | 一种基于深度学习的短视频去重方法 |
-
2023
- 2023-07-05 CN CN202310813729.XA patent/CN116567405B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1906934A (zh) * | 2004-06-10 | 2007-01-31 | 佳能株式会社 | 摄像设备 |
WO2007053656A2 (en) * | 2005-10-31 | 2007-05-10 | Searete Llc | Capturing selected image objects |
US9706102B1 (en) * | 2015-12-16 | 2017-07-11 | Amazon Technologies, Inc. | Enhanced images associated with display devices |
CN112866652A (zh) * | 2017-06-08 | 2021-05-28 | 三菱电机株式会社 | 影像信息存储装置 |
CN108563651A (zh) * | 2017-12-19 | 2018-09-21 | 深圳云天励飞技术有限公司 | 一种多视频的目标搜索方法、装置及设备 |
CN114372166A (zh) * | 2021-12-03 | 2022-04-19 | 浙江大华技术股份有限公司 | 一种图像管理的方法及装置 |
CN114187568A (zh) * | 2021-12-14 | 2022-03-15 | 杭州海康威视***技术有限公司 | 道路标牌破损检测方法、装置及存储介质 |
CN114973098A (zh) * | 2022-06-13 | 2022-08-30 | 乐知未来科技(深圳)有限公司 | 一种基于深度学习的短视频去重方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116567405A (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI677252B (zh) | 車輛損害圖像獲取方法、裝置、伺服器和終端設備 | |
CN110572579B (zh) | 图像处理方法、装置及电子设备 | |
US11849241B2 (en) | Dynamically configured processing of a region of interest dependent upon published video data selected by a runtime configuration file | |
US20160125261A1 (en) | Image analysis | |
CN116567405B (zh) | 一种画面变化的识别与拍摄方法、设备及介质 | |
US20240040108A1 (en) | Method and system for preprocessing optimization of streaming video data | |
WO2020115571A1 (en) | A system and method for video compression using key frames and sums of absolute differences | |
CN112053366A (zh) | 模型训练、样本生成方法、电子设备及存储介质 | |
CN102428701A (zh) | 捕捉数字图像的方法和图像捕捉装置 | |
US20220108427A1 (en) | Method and an electronic device for detecting and removing artifacts/degradations in media | |
CN115830362A (zh) | 图像处理方法、装置、设备、介质及产品 | |
CN114550102A (zh) | 货物堆积检测方法、装置、设备和*** | |
CN114170373A (zh) | 目标物体标注方法、处理器、装置及搅拌站 | |
US20240037915A1 (en) | Method and system for preprocessing optimization of streaming video data using machine learning | |
US11961273B2 (en) | Dynamically configured extraction, preprocessing, and publishing of a region of interest that is a subset of streaming video data | |
CN116363017B (zh) | 图像处理方法及装置 | |
CN117834614B (zh) | 一种云计算环境中gpu资源调度方法 | |
CN112995488B (zh) | 高解析度视频图像处理方法、装置及电子设备 | |
CN113191661B (zh) | 广告监播的方法、装置、存储介质及处理器 | |
CN116668782A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN116797442A (zh) | 视频处理方法、装置、计算机设备和存储介质 | |
CN115705697A (zh) | 物品信息管理方法、装置、电子设备及存储介质 | |
CN117292298A (zh) | 一种电力作业的目标实时安全监测方法、***及终端 | |
CN117789202A (zh) | 近似扰动确定方法、细胞功能预测方法、设备和介质 | |
KR20210120358A (ko) | 시각적 저손실 영상 압축 시스템 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |