CN117372933A - 图像去冗方法、装置及电子设备 - Google Patents
图像去冗方法、装置及电子设备 Download PDFInfo
- Publication number
- CN117372933A CN117372933A CN202311657702.2A CN202311657702A CN117372933A CN 117372933 A CN117372933 A CN 117372933A CN 202311657702 A CN202311657702 A CN 202311657702A CN 117372933 A CN117372933 A CN 117372933A
- Authority
- CN
- China
- Prior art keywords
- image
- image frames
- frames
- sub
- ith
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012216 screening Methods 0.000 claims abstract description 38
- 238000012545 processing Methods 0.000 claims description 76
- 239000011159 matrix material Substances 0.000 claims description 19
- 230000000903 blocking effect Effects 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000000605 extraction Methods 0.000 claims description 9
- 230000011218 segmentation Effects 0.000 claims description 8
- 238000012512 characterization method Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 4
- 238000004140 cleaning Methods 0.000 claims description 2
- 230000009191 jumping Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 12
- 238000004590 computer program Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000013507 mapping Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000008676 import Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- 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
-
- 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/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/48—Matching video sequences
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computational Linguistics (AREA)
- Image Processing (AREA)
Abstract
本申请提供一种图像去冗方法、装置及电子设备,通过获取目标视频流,以对目标视频流进行图像帧提取,并得到M个图像帧,M为大于等于2的正整数;针对M个图像帧,进行重复图像帧的粗筛,以清洗掉M个图像帧中的重复图像帧,并得到N个图像帧,N为大于等于2的正整数,且不超过M;针对N个图像帧中的第i个图像帧,确定第i个图像帧的图像指纹;根据N个图像帧的图像指纹,计算每两个图像帧之间的相似度;根据每两个图像帧之间的相似度,对N个图像帧进行精筛,以筛选掉N个图像帧中冗余的图像帧,从而整体上基于粗筛和精筛的配合,再以灰度图像来配合,从而可以很好地适应不同类型的图像数据等。
Description
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图像去冗方法、装置及电子设备。
背景技术
通过对图像进行去除冗余的处理可以减少存储需求,节省存储资源,同时减少处理的数量,提高处理的效率;而考虑到冗余的图像会增加数据分析的复杂性和困难度,通过去除冗余的图像,可以简化数据分析的过程,使得结果更加清晰和可解释。在图像搜索领域,冗余的图像会增加图像检索和搜索的困难度,而通过去除冗余的图像,可以提高图像检索和搜索的准确性和效率。
但是现有技术方案中,通常依赖于图像特征提取算法,该算法可能对特定类型的图像或冗余情况不敏感,无法很好地适应不同类型的图像数据,同时,需要较长的处理时间来检测和去除冗余图像,处理的效率较低,特别是在大规模图像集合中时,比如涉及到深度学习与GIS相结合,通过图像分类、目标检测、语义和实例分割等方法,自动从卫星、航空或无人机图像中提取有用信息。
发明内容
本申请的目的在于提出一种图像去冗方法、装置及电子设备,用于解决或者缓解现有技术中存在的技术问题。
本申请实施例提供一种图像去冗方法,其包括:
获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,所述M为大于等于2的正整数;
针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,所述N为大于等于2的正整数,且不超过M;
针对所述N个图像帧中的第i个图像帧,执行如下处理步骤,以确定所述第i个图像帧的图像指纹:
将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;
针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;
根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;
根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;
根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;
根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧。
本申请实施例提供一种图像去冗装置,其包括:
数据获取单元,用于获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,所述M为大于等于2的正整数;
粗筛单元,用于针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,所述N为大于等于2的正整数,且不超过M;
指纹计算单元,用于针对所述N个图像帧中的第i个图像帧,执行如下处理步骤,以确定所述第i个图像帧的图像指纹:
将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;
针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;
根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;
根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;
相似度计算单元,用于根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;
精筛单元,用于根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧。
本申请实施例提供一种电子设备,其包括:
一个或多个处理器;
计算机可读介质,配置为存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本申请实施例所述的方法。
本申请中,通过获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,所述M为大于等于2的正整数;针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,所述N为大于等于2的正整数,且不超过M;针对所述N个图像帧中的第i个图像帧,执行如下处理步骤,以确定所述第i个图像帧的图像指纹:将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧,从而整体上基于粗筛和精筛的配合,再以灰度图像来配合,从而可以很好地适应不同类型的图像数据,同时,粗筛和精筛的配合,可以单独实现并行处理,缩短了处理时间,提高了处理的效率,特别是在大规模图像集合中应用时。
附图说明
后文将参照附图以示例性而非限制性的方式详细描述本申请实施例的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
图1为本申请实施例一种图像去冗方法的流程示意图;
图2为本申请实施例得到N个图像帧的流程示意图;
图3为本申请实施例中确定图像指纹的流程示意图;
图4为本申请实施例提供一种图像去冗装置的结构示意图;
图5为本实施例电子设备的结构示意图;
图6为本实施例电子设备的硬件结构。
实施方式
为了使本领域的人员更好地理解本申请实施例中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请实施例保护的范围。
本申请中,通过获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,所述M为大于等于2的正整数;针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,所述N为大于等于2的正整数,且不超过M;针对所述N个图像帧中的第i个图像帧,执行如下处理步骤,以确定所述第i个图像帧的图像指纹:将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧,从而整体上基于粗筛和精筛的配合,再以灰度图像来配合,从而可以很好地适应不同类型的图像数据,同时,粗筛和精筛的配合,可以单独实现并行处理,缩短了处理时间,提高了处理的效率,特别是在大规模图像集合中时。
图1为本申请实施例一种图像去冗方法的流程示意图。如图1所示,其包括:
S101、获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧;
其中,所述M为大于等于2的正整数;
可选地,本实施例中,所述获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,包括:
在获取所述目标视频流时实时对获取到的所述目标视频流进行分段处理,以得到若干段视频流;
对所述若干段视频流进行并行图像帧的提取,以得到所述M个图像帧。
以下提供了一种示例性的代码,以实现上述步骤S101:
import cv2
from multiprocessing import Process, Queue
# 分段处理视频流
defprocess_video_stream(video_stream, segment_length, output_queue):
cap = cv2.VideoCapture(video_stream)
frame_count = 0
segment_frames = []
while True:
ret, frame = cap.read()
if not ret:
break
frame_count += 1
segment_frames.append(frame)
ifframe_count == segment_length:
output_queue.put(segment_frames)
frame_count = 0
segment_frames = []
cap.release()
# 并行提取图像帧
defextract_image_frames(segment_queue, output_queue):
while True:
segment_frames = segment_queue.get()
image_frames = []
for frame in segment_frames:
# 在这里进行图像帧的提取操作
image_frames.append(frame)
output_queue.put(image_frames)
# 主函数
def main():
video_stream = "path/to/video/stream" # 假设这是目标视频流的路径
segment_length = 10 # 假设每个分段包含10帧
num_image_frames = 5 # 假设需要提取5个图像帧
segment_queue = Queue()
image_frame_queue = Queue()
# 创建并启动分段处理视频流的进程
process_video = Process(target=process_video_stream, args=(video_stream, segment_length, segment_queue))
process_video.start()
# 创建并启动并行提取图像帧的进程
extract_frames = Process(target=extract_image_frames, args=(segment_queue, image_frame_queue))
extract_frames.start()
# 获取提取到的图像帧
image_frames = []
whilelen(image_frames) <num_image_frames:
frames = image_frame_queue.get()
image_frames.extend(frames)
# 打印提取到的图像帧
for frame in image_frames:
cv2.imshow("Image Frame", frame)
cv2.waitKey(0)
# 结束进程
process_video.terminate()
extract_frames.terminate()
if __name__ == "__main__":
main()
可选地,本实施例中,所述目标视频流的来源不做唯一性限定,且其格式不做唯一性限定,如果与期望的格式不匹配,则可以进行格式转换。
可选地,本实施例中,可以设置视频流分段标签窗口,以基于该视频流分段标签窗口实时对获取到的所述目标视频流进行分段处理,以得到若干段视频流,从而提高分段的效率,保证分段的准确性。
可选地,本实施例中,可以通过创建多个线程,以使得一个线程对一段视频流进行图像帧的提取,以实现对所述若干段视频流进行并行图像帧的提取。
S102、针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧;
其中,所述N为大于等于2的正整数,且不超过M;
可选地,本实施例中,图2为本申请实施例得到N个图像帧的流程示意图。如图2所示,针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,包括:
S112、对所述M个图像帧进行缩放处理,得到M个缩放图像;
S122、针对M个缩放图像中的任一缩放图像,执行如下步骤,以对其进行特征化处理,得到稀疏特征值矩阵;
获取其所有的像素值,以计算该缩放图像的平均像素值;
将每个像素值与所述平均像素值比较,若大于,则将所述任一缩放图像对应的原始稀疏特征值矩阵中对应位置处的值从0修改为1,否则,保持对应位置处的值为0,以得到所述稀疏特征值矩阵;
S132、针对M个缩放图像,若两个缩放图像对应稀疏特征值矩阵之间的距离小于设定的距离阈值,则判定对应的两个图像帧为重复图像帧,并清洗掉其中一个图像帧,以得到N个图像帧。
以下提供了一种实现上述步骤S112-S132的示例性代码:
import cv2 import numpy as np from scipy.spatial.distance importcdist
#对单个图像帧进行缩放处理
defresize_image(image, width, height): resized_image = cv2.resize(image, (width, height)) return resized_image
#计算图像的平均像素值
defcalculate_average_pixel_value(image): average_pixel_value =np.mean(image) return average_pixel_value
#特征化处理,得到稀疏特征值矩阵
deffeature_extraction(image, average_pixel_value): binary_matrix =np.where(image >average_pixel_value, 1, 0) return binary_matrix
#判定重复图像帧
defdetect_duplicate_frames(sparse_feature_matrices, distance_threshold): num_frames = len(sparse_feature_matrices) duplicate_flags =[False] * num_frames
for i in range(num_frames):
ifduplicate_flags[i]:
continue
for j in range(i + 1, num_frames):
ifduplicate_flags[j]:
continue
distance = cdist(sparse_feature_matrices[i], sparse_feature_matrices[j], metric='hamming')
if distance <distance_threshold:
duplicate_flags[j] = True
unique_frames = [i for i in range(num_frames) if not duplicate_flags[i]]
returnunique_frames
主函数
def main(): M = 10 # 假设有10个图像帧 width = 320 # 缩放后的宽度height = 240 # 缩放后的高度distance_threshold = 0.2 # 距离阈值
image_frames = [] # 存储图像帧
# 读取图像帧并进行缩放处理
resized_frames = []
for i in range(M):
image = cv2.imread(f"image_frame_{i}.jpg") # 假设这是获取到的原始图像帧
resized_image = resize_image(image, width, height)
resized_frames.append(resized_image)
# 对每个缩放图像进行特征化处理
sparse_feature_matrices = []
for frame in resized_frames:
average_pixel_value = calculate_average_pixel_value(frame)
sparse_feature_matrix = feature_extraction(frame, average_pixel_value)
sparse_feature_matrices.append(sparse_feature_matrix)
# 判定重复图像帧并保留唯一图像帧
unique_frames = detect_duplicate_frames(sparse_feature_matrices,distance_threshold)
# 打印唯一图像帧
for i in unique_frames:
cv2.imshow("Unique Image Frame", resized_frames[i])
cv2.waitKey(0)
本实施例中,通过缩放处理可以减小计算量和存储空间,使后续的特征化处理更加高效。另外通过特征化处理得到稀疏特征值矩阵,可以将图像转换为更具有表征性的数据表示,可以在保证一定准确率的前提下,避免了对所有图像帧进行两两比较的高计算复杂度,方便进行后续的相似度计算和重复图像帧的判定。再通过就计算缩放图像的平均像素值可以作为一种基准,用于对比每个像素值的相对大小,从而捕捉到图像的基本特征。
S103、针对所述N个图像帧中的第i个图像帧,执行如下步骤S113-S143处理步骤,以确定所述第i个图像帧的图像指纹:
本实例中,图3为本申请实施例中确定图像指纹的流程示意图。如图3所示,其包括:
S113、将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块;
其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;
S123、针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;
可选地,本实施例中,所述针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像,包括:
获取所述第i个图像帧对应的P个子图像块中每个像素的RGB颜色通道值;
根据所述RGB颜色通道值,计算对应的灰度值,以对每个子图像块进行灰度化,得到对应的P个灰度图像。
本实施例中,由于灰度图像只包含一个通道的像素值,相比于RGB图像的三个通道,可以大大减少数据量。这对于后续的图像处理和分析任务来说,可以节省存储空间和计算资源。另外,灰度图像将彩色图像转换为黑白图像,去除了颜色信息,使得图像特征更加简化,而不需要考虑颜色信息可以减少计算量,提高算法的执行效率。再者,通过灰度化处理,可以突出图像中的亮度差异,使得图像更加清晰和易于观察。灰度图像是最基本和通用的图像表示方式之一,几乎所有的图像处理算法都可以直接应用于灰度图像。因此,将图像转换为灰度图像可以增强算法的通用性和兼容性。
可选地,本实施例中,所述根据所述RGB颜色通道值,计算对应的灰度值,以对每个子图像块进行灰度化,得到对应的P个灰度图像,包括:
计算所述RGB颜色通道值的最大值或者加权平均值,将其作为对应的灰度值,以对每个子图像块进行灰度化,得到对应的P个灰度图像。
S133、根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;
可选地,根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹,包括:针对所述第i个图像帧对应的P个灰度图像,调用预设的哈希函数对每个灰度图像进行哈希运算,以得到对应的P个图像块指纹;
S143、根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;
可选地,本实施例中,所述的方法,还包括:预先建立N个数据缓冲队列池,每个数据缓冲队列池包括第一数据缓冲队列以及第二数据缓冲队列,所述第一数据缓冲队列配置有第一缓冲头和第一缓冲尾,所述第一缓冲头和所述第一缓冲尾配置为环相邻元素,所述第二数据缓冲队列配置有第二缓冲头和第二缓冲尾,所述第二缓冲头和所述第二缓冲尾配置为环相邻元素;
在将其中第i个图像帧的像素区域进行分块处理时,将所述第i个图像帧对应的P个子图像块按照分块处理的先后顺序缓存到第i个数据缓冲队列池中的第一数据缓冲队列中,当所述第一数据缓冲队列中缓存的子图像块达到P个时,等待所述第一数据缓冲队列中出现空余的位置,再向所述第一数据缓冲队列中缓存子图像块,且当所述第一缓冲尾存储有子图像块时,自动跳转到第一缓冲头,以重新开始子图像块的缓存,且,所述第一数据缓冲队列中出现空余的位置是由于从所述第一数据缓冲队列中获取子图像块进行所述灰度化引起;
在针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像时,从所述第一数据缓冲队列并行获取多个子图像块,以逐一进行灰度化,得到P个灰度图像,并将所述P个灰度图像按照灰度化的先后顺序缓存到第i个数据缓冲队列池中的第二数据缓冲队列中,当所述第二数据缓冲队列中缓存的灰度图像达到P个时,等待所述第二数据缓冲队列中出现空余的位置,再向所述第二数据缓冲队列中缓存子图像块,所述第二数据缓冲队列中出现空余的位置是由于从所述第二数据缓冲队列中获取灰度图像进行所述哈希运算引起,且当所述第二缓冲尾存储有灰度图像时,自动跳转到第二缓冲头,以重新开始灰度图像的缓存。
通过基于上述一个数据缓冲队列池对应一个图像帧,而由于每个数据缓冲队列池又包括第一数据缓冲队列以及第二数据缓冲队列,可以分别分配给分块处理、灰度化处理环节,从而减少内存的访问次数,提高数据处理的效率。每个数据缓冲队列池又包括第一数据缓冲队列以及第二数据缓冲队列,可以分别分配给分块处理、灰度化处理环节,又可以实现分块处理的并行处理、灰度化处理的并行处理,同时,避免分块处理和灰度化处理之间的串扰,减少代码的复杂性和耦合性。
可选地,所述将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,可以包括:
将其中第i个图像帧的像素区域映射到一数位图上,以将第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,所述数位图在创建时具有P个区域。
本实施例中,在将图像帧的像素区域分块处理后,可以将每个子图像块分配给不同的处理单元或线程进行处理,从而实现并行处理,提高处理速度和效率。且在处理时可以只加载和处理需要的子图像块,而不需要加载整个图像帧,从而减少内存占用,提高系统资源的利用率。再者,将图像帧的像素区域分块处理后,可以更加精细地对图像进行处理。不同的子图像块可以有不同的处理方式,可以根据具体需求对不同区域进行不同的处理操作,提高图像处理的质量和效果。而且,将图像帧的像素区域进行分块处理,可以根据需要对分块的数量进行调整,如果需要更高的处理速度,可以增加分块的数量;如果需要更高的处理质量,可以减少分块的数量,这样可以根据具体需求进行灵活调整,提高系统的可扩展性。
可选地,本实施例中,所述将其中第i个图像帧的像素区域映射到一数位图上,以将第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,包括:
将所述第i个图像帧的像素区域转换成一位置映射表;
将所述位置映射表映射到一数位图上,以将第i个图像帧的像素区域进行分块处理,共计得到P个子图像块。
可选地,本实施例中,以使用一个二维数组来表示数位图,将位置映射表中的每个像素位置对应的数位图元素设置为该像素的值。
可选地,将所述第i个图像帧的像素区域转换成一位置映射表的代码如下:
importnumpy as np
defgenerate_position_map(image_frame, block_size):
# 获取图像帧的尺寸
height, width, _ = image_frame.shape
# 计算位置映射表的尺寸
map_height = height // block_size
map_width = width // block_size
# 初始化位置映射表
position_map = np.zeros((map_height, map_width))
# 遍历图像帧的像素区域,计算每个像素所属的位置
for i in range(map_height):
for j in range(map_width):
# 获取当前位置的像素区域
block = image_frame[i*block_size:(i+1)*block_size, j*block_size:(j+1)*block_size]
# 计算该像素区域的平均像素值
avg_pixel = np.mean(block)
# 将平均像素值作为位置映射表中该位置的值
position_map[i, j] = avg_pixel
returnposition_map
可选地,所述将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,包括:
基于构建的滑动窗口,对所述第i个图像帧的像素区域进行分块处理,得到P个初始图像子块;
调用设置的校验函数,对所述P个初始图像子块进行校验,若全部校验通过,则将所述P个初始图像子块作为所述P个子图像块,否则,调整所述滑动窗口大小,重新对所述第i个图像帧的像素区域进行分块处理,直至所述P个初始图像子块全部校验通过。
可选地,本实施例中,所述校验函数比如为基于海明码(Hamming Code)的校验函数,在分块处理后得到P个初始图像子块之后,对每个子块应用校验函数进行校验时,针对每个初始图像子块生成一个校验码,以检测初始图像子块是否存在错误。如果存在错误,尝试调整滑动窗口的大小,重新对图像帧的像素区域进行分块处理,通过调整滑动窗口的大小,可以改变初始图像子块的大小和位置,以期望能够得到更准确的子块。
S104、根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;
可选地,所述根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹,包括:
将所述P个图像块指纹进行向量化得到固定长度的指纹码;
对所述P个图像块指纹对应的指纹码进行拼接,以得到所述第i个图像帧的图像指纹。
根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹,示例性的代码如下:
importnumpy as np
defvectorize_fingerprints(fingerprints, fixed_length):
# 获取每个图像块指纹的特征维度
feature_dim = fingerprints[0].shape[0]
# 初始化一个存储指纹码的数组
fingerprint_code = np.zeros((fixed_length,))
# 计算每个图像块指纹的向量长度
block_length = fixed_length // len(fingerprints)
# 将每个图像块指纹转化为向量,并拼接到指纹码中
for i, fingerprint in enumerate(fingerprints):
# 将图像块指纹向量的长度调整为block_length
fingerprint = fingerprint[:block_length]
# 将图像块指纹向量拼接到指纹码中
start_index = i * block_length
end_index = start_index + block_length
fingerprint_code[start_index:end_index] = fingerprint
returnfingerprint_code
本实施例中,通过将P个图像块指纹进行向量化得到固定长度的指纹码,并将这些指纹码拼接在一起,可以提取和表示图像的特征,保持维度一致性,保留局部特征,增强图像指纹的唯一性,降低噪声和冗余。
S105、根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧。
本实施例中,比如使用结构相似性指数(SSIM)、均方误差(MSE)等。对于每对图像帧,计算每两个图像帧之间的相似度,并将相似度存储在一个相似度矩阵中,遍历相似度矩阵,将相似度得分高于相似度阈值的图像帧筛选出来,并将其从图像帧中移除。
如下提供了步骤S105的一种示例性的代码实现框架:
# 计算相似度矩阵
similarity_matrix = np.zeros((num_frames, num_frames))
for i in range(num_frames):
for j in range(i + 1, num_frames):
distance = calculate_distance(sparse_feature_matrices[i], sparse_feature_matrices[j])
similarity = 1 - distance
similarity_matrix[i, j] = similarity
similarity_matrix[j, i] = similarity
# 筛选相似度高于阈值的图像帧
for i in range(num_frames):
ifduplicate_flags[i]:
continue
for j in range(i + 1, num_frames):
ifduplicate_flags[j]:
continue
ifsimilarity_matrix[i, j] >distance_threshold:
duplicate_flags[j] = True
unique_frames = [i for i in range(num_frames) if not duplicate_flags[i]]
return unique_frames。
此处,需要说明的是,上述实施例中的代码仅仅是示例,具体实现可能需要根据实际情况进行调整。
图4为本申请实施例提供一种图像去冗装置的结构示意图。如图4所示,其包括:
数据获取单元401,用于获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,所述M为大于等于2的正整数;
粗筛单元402,用于针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,所述N为大于等于2的正整数,且不超过M;
指纹计算单元403,用于针对所述N个图像帧中的第i个图像帧,执行如下处理步骤,以确定所述第i个图像帧的图像指纹:
将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;
针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;
根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;
根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;
相似度计算单元404,用于根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;
精筛单元405,用于根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧。
图5为本实施例电子设备的结构示意图;该电子设备可以包括:
一个或多个处理器501;
计算机可读介质502,可以配置为存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述实施例所述的方法。
图6为本实施例电子设备的硬件结构;如图6所示,该电子设备的硬件结构可以包括:处理器501,通信接口602,计算机可读介质502和通信总线604;
其中处理器501、通信接口602、计算机可读介质502通过通信总线604完成相互间的通信;
可选地,通信接口602可以为通信模块的接口,如GSM模块的接口;
其中,处理器501具体可以配置为:获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,所述M为大于等于2的正整数;针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,所述N为大于等于2的正整数,且不超过M;针对所述N个图像帧中的第i个图像帧,执行如下处理步骤,以确定所述第i个图像帧的图像指纹:将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧。
处理器501可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
计算机可读介质502可以是,但不限于,随机存取存储介质(Random AccessMemory,RAM),只读存储介质(Read Only Memory,ROM),可编程只读存储介质(Programmable Read-Only Memory,PROM),可擦除只读存储介质(Erasable ProgrammableRead-Only Memory,EPROM),电可擦除只读存储介质(Electric Erasable ProgrammableRead-Only Memory,EEPROM)等。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含配置为执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(CPU)执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读介质例如可以但不限于是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储介质(RAM)、只读存储介质(ROM)、可擦式可编程只读存储介质(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储介质(CD-ROM)、光存储介质件、磁存储介质件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输配置为由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写配置为执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络:包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个配置为实现规定的逻辑功能的可执行指令。上述具体实施例中有特定先后关系,但这些先后关系只是示例性的,在具体实现的时候,这些步骤可能会更少、更多或执行顺序有调整。即在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
作为另一方面,本申请还提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所描述的方法。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,所述M为大于等于2的正整数;针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,所述N为大于等于2的正整数,且不超过M;针对所述N个图像帧中的第i个图像帧,执行如下处理步骤,以确定所述第i个图像帧的图像指纹:将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧。
在本公开的各种实施方式中所使用的表述“第一”、“第二”、“所述第一”或“所述第二”可修饰各种部件而与顺序和/或重要性无关,但是这些表述不限制相应部件。以上表述仅配置为将元件与其它元件区分开的目的。例如,第一用户设备和第二用户设备表示不同的用户设备,虽然两者均是用户设备。例如,在不背离本公开的范围的前提下,第一元件可称作第二元件,类似地,第二元件可称作第一元件。
当一个元件(例如,第一元件)称为与另一元件(例如,第二元件)“(可操作地或可通信地)联接”或“(可操作地或可通信地)联接至”另一元件(例如,第二元件)或“连接至”另一元件(例如,第二元件)时,应理解为该一个元件直接连接至该另一元件或者该一个元件经由又一个元件(例如,第三元件)间接连接至该另一个元件。相反,可理解,当元件(例如,第一元件)称为“直接连接”或“直接联接”至另一元件(第二元件)时,则没有元件(例如,第三元件)插入在这两者之间。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种图像去冗方法,其特征在于,包括:
获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,所述M为大于等于2的正整数;
针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,所述N为大于等于2的正整数,且不超过M;
针对所述N个图像帧中的第i个图像帧,执行如下处理步骤,以确定所述第i个图像帧的图像指纹:
将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;
针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;
根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;
根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;
根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;
根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧。
2.根据权利要求1所述的方法,其特征在于,所述获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,包括:
在获取所述目标视频流时实时对获取到的所述目标视频流进行分段处理,以得到若干段视频流;
对所述若干段视频流进行并行图像帧的提取,以得到所述M个图像帧。
3.根据权利要求1所述的方法,其特征在于,所述的方法,还包括:预先建立N个数据缓冲队列池,每个数据缓冲队列池包括第一数据缓冲队列以及第二数据缓冲队列,所述第一数据缓冲队列配置有第一缓冲头和第一缓冲尾,所述第一缓冲头和所述第一缓冲尾配置为环相邻元素,所述第二数据缓冲队列配置有第二缓冲头和第二缓冲尾,所述第二缓冲头和所述第二缓冲尾配置为环相邻元素;
在将其中第i个图像帧的像素区域进行分块处理时,将所述第i个图像帧对应的P个子图像块按照分块处理的先后顺序缓存到第i个数据缓冲队列池中的第一数据缓冲队列中,当所述第一数据缓冲队列中缓存的子图像块达到P个时,等待所述第一数据缓冲队列中出现空余的位置,再向所述第一数据缓冲队列中缓存子图像块,且当所述第一缓冲尾存储有子图像块时,自动跳转到第一缓冲头,以重新开始子图像块的缓存,且,所述第一数据缓冲队列中出现空余的位置是由于从所述第一数据缓冲队列中获取子图像块进行所述灰度化引起;
在针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像时,从所述第一数据缓冲队列并行获取多个子图像块,以逐一进行灰度化,得到P个灰度图像,并将所述P个灰度图像按照灰度化的先后顺序缓存到第i个数据缓冲队列池中的第二数据缓冲队列中,当所述第二数据缓冲队列中缓存的灰度图像达到P个时,等待所述第二数据缓冲队列中出现空余的位置,再向所述第二数据缓冲队列中缓存子图像块,所述第二数据缓冲队列中出现空余的位置是由于从所述第二数据缓冲队列中获取灰度图像进行所述哈希运算引起,且当所述第二缓冲尾存储有灰度图像时,自动跳转到第二缓冲头,以重新开始灰度图像的缓存。
4.根据权利要求1所述的方法,其特征在于,所述针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,包括:
对所述M个图像帧进行缩放处理,得到M个缩放图像;
针对M个缩放图像中的任一缩放图像,执行如下步骤,以对其进行特征化处理,得到稀疏特征值矩阵;
获取其所有的像素值,以计算该缩放图像的平均像素值;
将每个像素值与所述平均像素值比较,若大于,则将所述任一缩放图像对应的原始稀疏特征值矩阵中对应位置处的值从0修改为1,否则,保持对应位置处的值为0,以得到所述稀疏特征值矩阵;
针对M个缩放图像,若两个缩放图像对应稀疏特征值矩阵之间的距离小于设定的距离阈值,则判定对应的两个图像帧为重复图像帧,并清洗掉其中一个图像帧,以得到N个图像帧。
5.根据权利要求1所述的方法,其特征在于,所述将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,包括:
基于构建的滑动窗口,对所述第i个图像帧的像素区域进行分块处理,得到P个初始图像子块;
调用设置的校验函数,对所述P个初始图像子块进行校验,若全部校验通过,则将所述P个初始图像子块作为所述P个子图像块,否则,调整所述滑动窗口大小,重新对所述第i个图像帧的像素区域进行分块处理,直至所述P个初始图像子块全部校验通过。
6.根据权利要求1所述的方法,其特征在于,所述针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像,包括:
获取所述第i个图像帧对应的P个子图像块中每个像素的RGB颜色通道值;
根据所述RGB颜色通道值,计算对应的灰度值,以对每个子图像块进行灰度化,得到对应的P个灰度图像。
7.根据权利要求6所述的方法,其特征在于,所述根据所述RGB颜色通道值,计算对应的灰度值,以对每个子图像块进行灰度化,得到对应的P个灰度图像,包括:
计算所述RGB颜色通道值的最大值或者加权平均值,将其作为对应的灰度值,以对每个子图像块进行灰度化,得到对应的P个灰度图像。
8.根据权利要求1所述的方法,其特征在于,所述根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹,包括:
将所述P个图像块指纹进行向量化得到固定长度的指纹码;
对所述P个图像块指纹对应的指纹码进行拼接,以得到所述第i个图像帧的图像指纹。
9.一种图像去冗装置,其特征在于,包括:
数据获取单元,用于获取目标视频流,以对所述目标视频流进行图像帧提取,并得到M个图像帧,所述M为大于等于2的正整数;
粗筛单元,用于针对所述M个图像帧,进行重复图像帧的粗筛,以清洗掉所述M个图像帧中的重复图像帧,并得到N个图像帧,所述N为大于等于2的正整数,且不超过M;
指纹计算单元,用于针对所述N个图像帧中的第i个图像帧,执行如下处理步骤,以确定所述第i个图像帧的图像指纹:
将其中第i个图像帧的像素区域进行分块处理,共计得到P个子图像块,其中,i为大于等于2的正整数,且小于等于N,P为大于等于2的正整数;
针对所述第i个图像帧对应的P个子图像块,对每个子图像块进行灰度化,得到对应的P个灰度图像;
根据所述第i个图像帧对应的P个灰度图像进行哈希运算,得到对应的P个图像块指纹;
根据所述第i个图像帧对应的P个图像块指纹,计算所述第i个图像帧的图像指纹;
相似度计算单元,用于根据所述N个图像帧的图像指纹,计算每两个图像帧之间的相似度;
精筛单元,用于根据所述每两个图像帧之间的相似度,对所述N个图像帧进行精筛,以筛选掉所述N个图像帧中冗余的图像帧。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
计算机可读介质,配置为存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任意一项权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311657702.2A CN117372933B (zh) | 2023-12-06 | 2023-12-06 | 图像去冗方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311657702.2A CN117372933B (zh) | 2023-12-06 | 2023-12-06 | 图像去冗方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117372933A true CN117372933A (zh) | 2024-01-09 |
CN117372933B CN117372933B (zh) | 2024-02-20 |
Family
ID=89406204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311657702.2A Active CN117372933B (zh) | 2023-12-06 | 2023-12-06 | 图像去冗方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117372933B (zh) |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010078629A1 (en) * | 2009-01-12 | 2010-07-15 | The University Of Queensland | A system for real time near-duplicate video detection |
US20140270530A1 (en) * | 2013-03-15 | 2014-09-18 | Dropbox, Inc. | Duplicate/near duplicate detection and image registration |
CN104469229A (zh) * | 2014-11-18 | 2015-03-25 | 北京恒华伟业科技股份有限公司 | 视频数据存储方法和装置 |
CN105760461A (zh) * | 2016-02-04 | 2016-07-13 | 上海卓易科技股份有限公司 | 相册的自动建立方法及其装置 |
CN105989611A (zh) * | 2015-02-05 | 2016-10-05 | 南京理工大学 | 带有阴影去除的分块感知哈希跟踪方法 |
CN110569927A (zh) * | 2019-09-19 | 2019-12-13 | 浙江大搜车软件技术有限公司 | 移动端全景图像扫描提取的方法、终端和计算机设备 |
CN111324774A (zh) * | 2020-02-26 | 2020-06-23 | 腾讯科技(深圳)有限公司 | 一种视频去重方法和装置 |
CN111382305A (zh) * | 2018-12-29 | 2020-07-07 | 广州市百果园信息技术有限公司 | 一种视频去重方法、装置、计算机设备和存储介质 |
CN111666363A (zh) * | 2020-04-22 | 2020-09-15 | 国家信息中心 | 一种海量高分辨率影像数据切片及质量控制的方法及装置 |
CN112911239A (zh) * | 2021-01-28 | 2021-06-04 | 北京市商汤科技开发有限公司 | 视频处理方法及装置、电子设备和存储介质 |
CN112929695A (zh) * | 2021-01-25 | 2021-06-08 | 北京百度网讯科技有限公司 | 视频去重方法、装置、电子设备和存储介质 |
CN113557736A (zh) * | 2019-03-11 | 2021-10-26 | 华为技术有限公司 | 视频译码中的子图像级滤波 |
CN113780042A (zh) * | 2020-11-09 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 图片集操作方法、图片集标注方法和装置 |
CN114268730A (zh) * | 2020-09-15 | 2022-04-01 | 华为技术有限公司 | 图像存储的方法、装置、计算机设备和存储介质 |
CN114637870A (zh) * | 2022-03-14 | 2022-06-17 | 重庆大学 | 一种图像数据处理方法、装置、设备及存储介质 |
CN115022670A (zh) * | 2022-05-31 | 2022-09-06 | 咪咕文化科技有限公司 | 视频文件存储方法、还原方法、装置、设备及存储介质 |
CN115293126A (zh) * | 2022-06-20 | 2022-11-04 | 南开大学 | 大规模文本数据的去重方法及装置、电子设备和存储介质 |
CN117011703A (zh) * | 2023-07-05 | 2023-11-07 | 浙江图盛输变电工程有限公司温州科技分公司 | 一种输电线路巡检图像去重方法 |
-
2023
- 2023-12-06 CN CN202311657702.2A patent/CN117372933B/zh active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010078629A1 (en) * | 2009-01-12 | 2010-07-15 | The University Of Queensland | A system for real time near-duplicate video detection |
US20140270530A1 (en) * | 2013-03-15 | 2014-09-18 | Dropbox, Inc. | Duplicate/near duplicate detection and image registration |
CN104469229A (zh) * | 2014-11-18 | 2015-03-25 | 北京恒华伟业科技股份有限公司 | 视频数据存储方法和装置 |
CN105989611A (zh) * | 2015-02-05 | 2016-10-05 | 南京理工大学 | 带有阴影去除的分块感知哈希跟踪方法 |
CN105760461A (zh) * | 2016-02-04 | 2016-07-13 | 上海卓易科技股份有限公司 | 相册的自动建立方法及其装置 |
CN111382305A (zh) * | 2018-12-29 | 2020-07-07 | 广州市百果园信息技术有限公司 | 一种视频去重方法、装置、计算机设备和存储介质 |
CN113557736A (zh) * | 2019-03-11 | 2021-10-26 | 华为技术有限公司 | 视频译码中的子图像级滤波 |
CN110569927A (zh) * | 2019-09-19 | 2019-12-13 | 浙江大搜车软件技术有限公司 | 移动端全景图像扫描提取的方法、终端和计算机设备 |
CN111324774A (zh) * | 2020-02-26 | 2020-06-23 | 腾讯科技(深圳)有限公司 | 一种视频去重方法和装置 |
CN111666363A (zh) * | 2020-04-22 | 2020-09-15 | 国家信息中心 | 一种海量高分辨率影像数据切片及质量控制的方法及装置 |
CN114268730A (zh) * | 2020-09-15 | 2022-04-01 | 华为技术有限公司 | 图像存储的方法、装置、计算机设备和存储介质 |
CN113780042A (zh) * | 2020-11-09 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 图片集操作方法、图片集标注方法和装置 |
CN112929695A (zh) * | 2021-01-25 | 2021-06-08 | 北京百度网讯科技有限公司 | 视频去重方法、装置、电子设备和存储介质 |
CN112911239A (zh) * | 2021-01-28 | 2021-06-04 | 北京市商汤科技开发有限公司 | 视频处理方法及装置、电子设备和存储介质 |
CN114637870A (zh) * | 2022-03-14 | 2022-06-17 | 重庆大学 | 一种图像数据处理方法、装置、设备及存储介质 |
CN115022670A (zh) * | 2022-05-31 | 2022-09-06 | 咪咕文化科技有限公司 | 视频文件存储方法、还原方法、装置、设备及存储介质 |
CN115293126A (zh) * | 2022-06-20 | 2022-11-04 | 南开大学 | 大规模文本数据的去重方法及装置、电子设备和存储介质 |
CN117011703A (zh) * | 2023-07-05 | 2023-11-07 | 浙江图盛输变电工程有限公司温州科技分公司 | 一种输电线路巡检图像去重方法 |
Non-Patent Citations (4)
Title |
---|
BIN WANG等: "LARGE-SCALE DUPLICATE DETECTION FOR WEB IMAGE SEARCH", 《ICME》, pages 353 - 356 * |
唐林川等: "基于pHash分块局部探测的海量图像查重算法", 《计算机应用》, vol. 39, no. 9, pages 2789 - 2794 * |
李榕: "医美类视频公众关注特征及传播效果影响因素研究", 《中国优秀硕士学位论文全文数据库 医药卫生科技辑》, no. 01, pages 053 - 61 * |
江小平等: "基于分块DCT的图像去重算法", 《中南民族大学学报( 自然科学版)》, vol. 37, no. 3, pages 72 - 75 * |
Also Published As
Publication number | Publication date |
---|---|
CN117372933B (zh) | 2024-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2640296C1 (ru) | Способ и устройство для определения пригодности документа для оптического распознавания символов (ocr) на сервере | |
JP5775225B2 (ja) | マルチレイヤ連結成分をヒストグラムと共に用いるテキスト検出 | |
CN110853033B (zh) | 基于帧间相似度的视频检测方法和装置 | |
US11222211B2 (en) | Method and apparatus for segmenting video object, electronic device, and storage medium | |
CN111681273B (zh) | 图像分割方法、装置、电子设备及可读存储介质 | |
US8103058B2 (en) | Detecting and tracking objects in digital images | |
US11847816B2 (en) | Resource optimization based on video frame analysis | |
RU2634195C1 (ru) | Способ и устройство для определения пригодности документа для оптического распознавания символов (ocr) | |
CN110084172B (zh) | 文字识别方法、装置和电子设备 | |
JP2013522771A (ja) | 二次導関数エッジ検出方法のためのエッジオリエンテーション | |
WO2022105197A1 (en) | Systems and methods for image detection | |
CN111639513A (zh) | 一种船只遮挡识别方法、装置及电子设备 | |
CN115511890A (zh) | 异型网络接口大流量数据的分析系统 | |
CN113439227A (zh) | 放大图像的捕获和存储 | |
CN114663871A (zh) | 图像识别方法、训练方法、装置、系统及存储介质 | |
CN112330602B (zh) | 一种智能陷印方向判断方法及装置 | |
CN112966687B (zh) | 图像分割模型训练方法、装置及通信设备 | |
WO2015031350A1 (en) | Systems and methods for memory utilization for object detection | |
CN117372933B (zh) | 图像去冗方法、装置及电子设备 | |
CN112287905A (zh) | 车辆损伤识别方法、装置、设备及存储介质 | |
CN110210314B (zh) | 人脸检测方法、装置、计算机设备及存储介质 | |
EP4332910A1 (en) | Behavior detection method, electronic device, and computer readable storage medium | |
CN113727050B (zh) | 面向移动设备的视频超分辨率处理方法、装置、存储介质 | |
KR20140112635A (ko) | 특징점 기반 영상처리 장치 및 그 영상 처리 방법 | |
CN112950652B (zh) | 机器人及其手部图像分割方法和装置 |
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 |