CN112348815B - 图像处理方法、图像处理装置以及非瞬时性存储介质 - Google Patents

图像处理方法、图像处理装置以及非瞬时性存储介质 Download PDF

Info

Publication number
CN112348815B
CN112348815B CN202110015478.1A CN202110015478A CN112348815B CN 112348815 B CN112348815 B CN 112348815B CN 202110015478 A CN202110015478 A CN 202110015478A CN 112348815 B CN112348815 B CN 112348815B
Authority
CN
China
Prior art keywords
image
area
vertexes
blackboard
vertex
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
Application number
CN202110015478.1A
Other languages
English (en)
Other versions
CN112348815A (zh
Inventor
岳海纯
张俊
兰永亮
吴伯川
李力
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New Oriental Education Technology Group Co ltd
Original Assignee
New Oriental Education Technology Group Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by New Oriental Education Technology Group Co ltd filed Critical New Oriental Education Technology Group Co ltd
Priority to CN202110015478.1A priority Critical patent/CN112348815B/zh
Publication of CN112348815A publication Critical patent/CN112348815A/zh
Application granted granted Critical
Publication of CN112348815B publication Critical patent/CN112348815B/zh
Priority to CA3204361A priority patent/CA3204361A1/en
Priority to US18/271,278 priority patent/US20240078646A1/en
Priority to PCT/CN2021/135356 priority patent/WO2022148192A1/zh
Priority to JP2023541634A priority patent/JP2024500555A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T5/80
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/60Rotation of a whole image or part thereof
    • G06T3/608Skewing or deskewing, e.g. by two-pass or three-pass rotation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration by the use of local operators
    • G06T5/70
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/64Analysis of geometric attributes of convexity or concavity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20024Filtering details
    • G06T2207/20032Median filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20164Salient point detection; Corner detection

Abstract

一种图像处理方法、图像处理装置以及非瞬时性存储介质。该图像处理方法包括:获取教学场景的输入图像;对输入图像进行检测处理,以确定包括板书区域的矩形检测区域;对矩形检测区域进行分析处理,以确定对应于板书区域的目标区域;确定目标区域的四个顶点;以及根据目标区域的四个顶点,对目标区域进行坐标变换,以得到校正后的板书区域图像。该图像处理方法,可以对输入图像中变形的板书区域进行标定及校正,以得到校正后的板书区域图像;基于板书区域的自动标注和校正结果,可以辅助学生将观看的兴趣点集中于板书区域。

Description

图像处理方法、图像处理装置以及非瞬时性存储介质
技术领域
本公开的实施例涉及一种图像处理方法、图像处理装置以及非瞬时性存储介质。
背景技术
随着教育信息化的不断发展,视频课程在教学过程中的应用日益广泛。例如,在进行面授课堂教学时,可以利用录播系统实现对课堂教学内容的录制以形成课堂教学视频,从而,学生可以在线观看课堂教学视频以补习、复习相关教学内容。另外,课堂教学视频还广泛应用于教学评估、示范课录制、教学观摩、远程教学等。
发明内容
本公开至少一些实施例提供一种图像处理方法,包括:获取教学场景的输入图像;对所述输入图像进行检测处理,以确定包括板书区域的矩形检测区域;对所述矩形检测区域进行分析处理,以确定对应于所述板书区域的目标区域;确定所述目标区域的四个顶点;以及,根据所述目标区域的四个顶点,对所述目标区域进行坐标变换,以得到校正后的板书区域图像。
例如,在本公开的一些实施例提供的图像处理方法中,确定所述目标区域的四个顶点,包括:使用轮廓检测算法对所述目标区域进行轮廓检测处理,以得到至少一个轮廓;对所述至少一个轮廓进行筛选处理,以得到至少一个备选轮廓;基于所述至少一个备选轮廓,确定备选角点集合;以及,基于所述备选角点集合,确定所述目标区域的四个顶点。
例如,在本公开的一些实施例提供的图像处理方法中,基于所述至少一个备选轮廓,确定所述备选角点集合,包括:计算所述至少一个备选轮廓的每个角点对应的顶角的角度值;以及,根据所述至少一个备选轮廓的每个角点对应的顶角的角度值,对所述至少一个备选轮廓的每个角点进行筛选,以得到多个第一备选角点,其中,所述备选角点集合包括所述多个第一备选角点。
例如,在本公开的一些实施例提供的图像处理方法中,基于所述至少一个备选轮廓,确定所述备选角点集合,包括:根据角点数量阈值对所述至少一个备选轮廓进行筛选,得到至少一个预选轮廓;按照拟合精度对每个所述预选轮廓进行折线化拟合,将每个所述预选轮廓中的距离大于所述拟合精度的角点舍弃,距离小于所述拟合精度的角点保留,以得到闭合的拟合图形;以及,计算所述拟合图形的面积和角点数量,将面积小于面积阈值且角点数量小于4的所述拟合图形对应的预选轮廓舍弃,否则,提高所述拟合精度的数值并进行下一次折线化拟合,直至找到面积不小于所述面积阈值且角点数量等于4的拟合图形为止,将最终确定的拟合图像的四个顶点作为第二备选角点,其中,所述备选角点集合包括多个所述第二备选角点。
例如,在本公开的一些实施例提供的图像处理方法中,基于所述至少一个备选轮廓,确定所述备选角点集合,还包括:计算所述至少一个备选轮廓的每个角点对应的顶角的角度值; 根据所述至少一个备选轮廓的每个角点对应的顶角的角度值,对所述至少一个备选轮廓的每个角点进行筛选,以得到多个第一备选角点;根据角点数量阈值对所述至少一个备选轮廓进行筛选,得到至少一个预选轮廓;按照拟合精度对每个所述预选轮廓进行折线化拟合,将每个所述预选轮廓中的距离大于所述拟合精度的角点舍弃,距离小于所述拟合精度的角点保留,以得到闭合的拟合图形;以及,计算所述拟合图形的面积和角点数量,将面积小于面积阈值且角点数量小于4的所述拟合图形对应的预选轮廓舍弃,否则,提高所述拟合精度的数值并进行下一次折线化拟合,直至找到面积不小于所述面积阈值且角点数量等于4的拟合图形为止,将最终确定的拟合图像的四个顶点作为第二备选角点,其中,所述备选角点集合包括所述多个第一备选角点和多个所述第二备选角点。
例如,在本公开的一些实施例提供的图像处理方法中,基于所述备选角点集合,确定所述目标区域的四个顶点,包括:对所述备选角点集合中的角点进行第一聚类操作,以得到四个聚类中心,并将所述四个聚类中心作为所述目标区域的四个顶点。
例如,在本公开的一些实施例提供的图像处理方法中,对所述备选角点集合中的角点进行所述第一聚类操作,包括:采用K均值聚类算法进行所述第一聚类操作,其中,K=4。
例如,在本公开的一些实施例提供的图像处理方法中,对所述矩形检测区域进行所述分析处理,以确定对应于所述板书区域的所述目标区域,包括:对所述矩形检测区域进行滤波处理,以得到对应于所述矩形检测区域的滤波图像,并根据滤波图像得到第一灰度图像;对所述第一灰度图像进行显著性区域检测处理,以得到第二灰度图像;对所述第二灰度图像进行边缘检测处理和二值化处理,以得到二值图像;以及,对所述二值图像进行连通区域分析处理,以确定对应于所述板书区域的所述目标区域。
例如,在本公开的一些实施例提供的图像处理方法中,对所述矩形检测区域进行所述滤波处理,以得到对应于所述矩形检测区域的所述滤波图像,包括:采用中值滤波法对所述矩形检测区域进行所述滤波处理,以得到对应于所述矩形检测区域的所述滤波图像。
例如,在本公开的一些实施例提供的图像处理方法中,对所述第一灰度图像进行所述显著性区域检测处理,以得到所述第二灰度图像,包括:计算所述第一灰度图像上的每个像素在所述第一灰度图像上的全局对比度,作为所述每个像素的显著值;以及,基于所述第一灰度图像上的所有像素的显著值,得到第二灰度图像,其中,所述第二灰度图像上的任一像素的灰度值为所述第一灰度图像上对应于所述任一像素的某一像素的显著值。
例如,在本公开的一些实施例提供的图像处理方法中,对所述第二灰度图像进行所述边缘检测处理和所述二值化处理,以得到所述二值图像,包括:计算所述第二灰度图像上的所有像素的灰度梯度,以确定初选边缘像素;对所述初选边缘像素进行非极大值抑制操作,以确定次选边缘像素;对所述次选边缘像素进行双阈值筛选操作,以得到终选边缘像素;以及,根据所述终选边缘像素,对所述第二灰度图像进行所述二值化处理,以得到所述二值图像。
例如,在本公开的一些实施例提供的图像处理方法中,对所述二值图像进行连通区域分析处理,以确定对应于所述板书区域的所述目标区域,包括:确定所述二值图像上的所有连通区域以及每个所述连通区域的外接矩形框;选择所述外接矩形框的面积从大到小排序为第2到第N的连通区域作为待选区域,其中,N为大于等于2的整数;以及,根据所述板书区域的第二先验知识,对所述待选区域进行验证,以确定对应于所述板书区域的所述目标区域。
例如,在本公开的一些实施例提供的图像处理方法中,所述第二先验知识包括:所述板书区域的中心坐标与所述二值图像的中心坐标之间的距离小于距离阈值;以及,所述板书区域的长宽比位于第二范围内。
例如,在本公开的一些实施例提供的图像处理方法中,对所述输入图像进行所述检测处理,以确定包括所述板书区域的所述矩形检测区域,包括:根据所述板书区域的第一先验知识,对所述矩形检测区域进行验证。
例如,在本公开的一些实施例提供的图像处理方法中,所述第一先验知识包括:所述板书区域的中心坐标位于所述输入图像的上半部分;以及,所述板书区域的长宽比位于第一范围内。
例如,在本公开的一些实施例提供的图像处理方法中,根据所述目标区域的四个顶点,对所述目标区域进行所述坐标变换,以得到所述校正后的板书区域图像,包括:根据约束条件进行所述坐标变换。其中,所述约束条件包括:所述校正后的板书区域图像为矩形,所述目标区域的四个顶点经过所述坐标变换后对应于所述矩形的四个顶点。
例如,本公开的一些实施例提供的图像处理方法,还包括:获取所述教学场景的视频序列;从所述视频序列中抽取多帧图像分别作为所述输入图像,以得到所述目标区域在所述多帧图像中的每帧图像上的四个顶点;将所述目标区域在所述多帧图像中的每帧图像上的四个顶点作为预测顶点,基于所述预测顶点确定所述目标区域的四个最终预测顶点;以及,根据所述目标区域的四个最终预测顶点,对所述视频序列的每帧图像中的目标区域进行坐标变换,以得到与所述视频序列的每帧图像对应的校正后的板书区域图像。
例如,在本公开的一些实施例提供的图像处理方法中,将所述目标区域在所述多帧图像中的每帧图像上的四个顶点作为所述预测顶点,基于所述预测顶点确定所述目标区域的四个最终预测顶点,包括:根据所述目标区域的每个顶点对应的预测顶点的坐标,对所述每个顶点对应的预测顶点进行第二聚类操作,以得到所述每个顶点对应的至少一个预测子类,并将所述每个顶点对应的当前包括最多预测顶点的预测子类的中心坐标作为所述每个顶点的当前预测坐标;根据所述目标区域的四个顶点的当前预测坐标,确定任意两个相邻的顶点的当前预测坐标的连线到水平线的第一夹角值;根据所述任意两个相邻的顶点的当前预测坐标,在所述多帧图像中的某帧图像上确定一个预测矩形区域,其中,所述某帧图像经过滤波处理、显著性区域检测处理以及边缘检测处理和二值化处理,所述任意两个相邻的顶点的当前预测坐标的连线为所述预测矩形区域的对角线,所述预测矩形区域的每条边平行或垂直于所述水平线;在所述预测矩形区域中寻找直线,以确定一条曲线段,其中,所述曲线段包括多条线段,并基于所述多条线段确定所述曲线段的平均切线的斜率,基于所述平均切线的斜率确定所述平均切线到所述水平线的第二夹角值;以及,根据所述第一夹角值和所述第二夹角值,确定所述任意两个相邻的顶点的最终预测坐标。
例如,在本公开的一些实施例提供的图像处理方法中,根据所述第一夹角值和所述第二夹角值,确定所述任意两个相邻的顶点的最终预测坐标,包括:响应于所述第一夹角值和所述第二夹角值的差值不大于第一阈值,将所述任意两个相邻的顶点的当前预测坐标作为所述任意两个相邻的顶点的最终预测坐标。
例如,在本公开的一些实施例提供的图像处理方法中,根据所述第一夹角值和所述第二夹角值,确定所述任意两个相邻的顶点的最终预测坐标,还包括:响应于所述第一夹角值和所述第二夹角值的差值大于所述第一阈值,判断所述任意两个相邻的顶点的当前预测坐标与所述曲线段的最小距离是否不大于第二阈值;响应于所述任意两个相邻的顶点之一的当前预测坐标与所述曲线段的最小距离不大于所述第二阈值且所述任意两个相邻的顶点之另一的当前预测坐标与所述曲线段的最小距离大于所述第二阈值,根据所述平均切线的斜率确定经过所述任意两个相邻的顶点之一的当前预测坐标的第一直线,同时根据与所述任意两个相邻的顶点之一相对的顶点的当前预测坐标以及所述任意两个相邻的顶点之另一的当前预测坐标确定第二直线,将所述任意两个相邻的顶点之一的当前预测坐标作为所述任意两个相邻的顶点之一的最终预测坐标,将所述第一直线和所述第二直线的交点的坐标作为所述任意两个相邻的顶点之另一的最终预测坐标;以及,响应于所述任意两个相邻的顶点的当前预测坐标与所述曲线段的最小距离均大于所述第二阈值,舍弃所述任意两个相邻的顶点中的每个顶点对应的当前包括最多预测顶点的预测子类,将所述任意两个相邻的顶点中的每个顶点对应的剩余的包括最多预测顶点的预测子类的中心坐标作为所述任意两个相邻的顶点中的每个顶点的当前预测坐标,直到确定所述任意两个相邻的顶点中的每个顶点的最终预测坐标为止。
例如,在本公开的一些实施例提供的图像处理方法中,根据所述第一夹角值和所述第二夹角值,确定所述任意两个相邻的顶点的最终预测坐标,还包括:响应于所述任意两个相邻的顶点对应的全部预测子类均被舍弃,根据所述任意两个相邻的顶点对应的所述曲线段的平均切线的斜率确定所述任意两个相邻的顶点对应的曲线段的平均切线,根据与所述任意两个相邻的顶点之一相对的顶点的当前预测坐标以及所述任意两个相邻的顶点之另一的当前预测坐标确定第三直线,根据与所述任意两个相邻的顶点之另一相对的顶点的当前预测坐标以及所述任意两个相邻的顶点之一的当前预测坐标确定第四直线,将所述平均切线和所述第三直线的交点的坐标作为所述任意两个相邻的顶点之一的最终预测坐标,将所述平均切线和所述第三直线的交点的坐标作为所述任意两个相邻的顶点之另一的最终预测坐标。
本公开至少一些实施例还提供一种图像处理装置,包括:存储器,用于非暂时性存储计算机可读指令;以及处理器,用于运行所述计算机可读指令,其中,所述计算机可读指令被所述处理器运行时,执行本公开任一实施例提供的图像处理方法。
本公开至少一些实施例还提供一种非瞬时性存储介质,非暂时性地存储计算机可读指令,其中,当所述非暂时性计算机可读指令由计算机执行时,执行本公开任一实施例提供的图像处理方法的指令。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1为本公开至少一些实施例提供的一种图像处理方法的流程图;
图2为本公开至少一些实施例提供的一种输入图像中的矩形检测区域的示意图;
图3为本公开至少一些实施例提供的一种对应于图1中所示的步骤S300的示例性流程图;
图4为本公开至少一些实施例提供的一种对应于图3中所示的步骤S320的示例性流程图;
图5为本公开至少一些实施例提供的一种对应于图3中所示的步骤S330的示例性流程图;
图6为本公开至少一些实施例提供的一种对应于图3中所示的步骤S340的示例性流程图;
图7为本公开至少一些实施例提供的一种连通区域分析处理的结果示意图;
图8为本公开至少一些实施例提供的一种对应于图1中所示的步骤S400的示例性流程图;
图9A为本公开至少一些实施例提供的一种对应于图8中所示的步骤S430的示例性流程图;
图9B为本公开至少一些实施例提供的另一种对应于图8中所示的步骤S430的示例性流程图;
图10A为本公开至少一些实施例提供的一种输入图像的示意图;
图10B为根据图1所示的图像处理方法对图10A所示的输入图像进行处理得到的一种校正后的板书区域图像的示意图;
图11为本公开至少一些实施例提供的另一种图像处理方法的流程图;
图12为本公开至少一些实施例提供的另一种对应于图11中所示的步骤S800的示例性流程图;
图13A为本公开至少一些实施例提供的一种输入图像的示意性框图;
图13B为图13A所示的输入图像中的目标区域的四边形边界的示意图;
图13C为图13A所示的输入图像中的目标区域的四个顶点的示意图;
图14为本公开至少一些实施例提供的一种图像处理装置的示意性框图;以及
图15为本公开至少一些实施例提供的一种非瞬时性存储介质的示意图。
具体实施方式
为了使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
下面通过几个具体的实施例对本公开进行说明。为了保持本公开实施例的以下说明清楚且简明,本公开省略了已知功能和已知部件的详细说明。当本公开实施例的任一部件在一个以上的附图中出现时,该部件在每个附图中由相同或类似的参考标号表示。
当前,在录制课堂教学视频时,通常使用摄像头对面授课教室的讲台方向进行视频采集。在实际的课堂教学现场中,摄像头的安装情况非常复杂,其安装位置不可避免地会产生程度不一的俯仰角(pitch)和偏航角(yaw),有的时候还可能因为安装得不合理而形成一定程度的横滚角(roll),这些情况都会导致明显的视频画面变形。
为了解决上述视频画面变形的问题,目前使用的方法主要有两种。第一种方法(简称“屏幕标注法”)是对采集到的视频图像进行手动数据标注,得到多个已知二维点坐标,再根据二维坐标和三维坐标的关系得到单应性矩阵,最后基于单应性矩阵对画面变形进行校正。第二种方法(简称“现场标定法”)是采用多个摄像头或深度摄像头,通过现场放置的标定板进行相机标定,然后根据得到的相机参数对画面变形进行校正。然而,该方法需要在硬件上增加成本(使用多个摄像头或者昂贵的深度摄像头),不具有普适性。
然而,上述两种方法都需要较大的人工工作量。而且,实际教室中安装的摄像头,常会因各种环境因素(例如,建筑施工等引起的震动等)发生角度、机位、焦距等变动,考虑到每次变动之后都需要重新进行屏幕标注或者现场标定,则人力成本投入将更加不可估量。
本公开至少一些实施例提供一种图像处理方法。该图像处理方法包括:获取教学场景的输入图像;对输入图像进行检测处理,以确定包括板书区域的矩形检测区域;对矩形检测区域进行分析处理,以确定对应于板书区域的目标区域;确定目标区域的四个顶点;以及根据目标区域的四个顶点,对目标区域进行坐标变换,以得到校正后的板书区域图像。
本公开的一些实施例还提供对应于上述图像处理方法的图像处理装置以及非瞬时性存储介质。
本公开的实施例提供的图像处理方法,可以对输入图像中变形的板书区域进行标定及校正,以得到校正后的板书区域图像。该图像处理方法只需借助于低成本的固定摄像头,无需再安装其他额外设备,具有较高的实用性,适合于大范围普及推广;同时,无需对输入图像进行手动数据标注,也无需在教学场景中放置标定板并进行相机标定,可以大大节省人力成本;再者,基于板书区域的自动标注和校正结果,可辅助进行相应区域的特定处理,例如,可以辅助学生将观看的兴趣点集中于板书区域。
下面结合附图对本公开的一些实施例及其示例进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
图1为本公开至少一些实施例提供的一种图像处理方法的流程图。例如,该图像处理方法可以应用于计算设备,该计算设备包括具有计算功能的任何电子设备,例如可以为智能手机、笔记本电脑、平板电脑、台式计算机、服务器等,本公开的实施例对此不作限制。例如,该计算设备具有中央处理单元(Central Processing Unit,CPU)或图形处理单元(Graphics Processing Unit,GPU),该计算设备还包括存储器。该存储器例如为非易失性存储器(例如只读存储器(Read Only Memory,ROM)),其上存储有操作系统的代码。例如,存储器上还存储有代码或指令,通过运行这些代码或指令,可以实现本公开实施例提供的图像处理方法。
例如,如图1所示,该图像处理方法包括以下步骤S100至步骤S500。
步骤S100:获取教学场景的输入图像。
例如,在通常的教学场景中,教师在讲台上进行教学,并辅以各种板书。例如,在本公开的实施例中,板书是指可以用于展示教师的教学内容的载体,包括黑板、白板、PPT的投影区域等;例如,在板书中,教师可以通过文字、图形、符号等板书内容对教学内容进行阐释。应当理解的是,对于黑板、白板、PPT的投影区域等板书而言,无论其上是否具有具体的板书内容,其均被视为板书。
例如,教学场景的输入图像可以包括通过摄像头(例如,摄像机的摄像头、智能手机的摄像头等)对上述教学场景的讲台方向进行拍摄得到的照片和视频图像等。例如,教学场景的输入图像的画面通常包括上述板书的画面(即板书区域)。
例如,在一些实施例中,输入图像可以为彩色图像。例如,彩色图像包括但不限于具有三种颜色通道的彩色图像等。例如,该三种颜色通道包括第一颜色通道、第二颜色通道和第三颜色通道。例如,该三种颜色通道分别对应于三原色。例如,在一些实施例中,第一颜色通道为红色(R)通道,第二颜色通道为绿色(G)通道,第三颜色通道为蓝色(B)通道,即上述彩色图像可以为RGB格式的彩色图像,需要说明的是,本公开的实施例包括但不限于此。例如,在另一些实施例中,输入图像也可以为灰度图像。
步骤S200:对输入图像进行检测处理,以确定包括板书区域的矩形检测区域。
例如,在一些实施例中,可以采用常见的目标检测算法对输入图像中的板书区域进行检测。例如,常见的目标检测算法包括R-CNN(Region-based Convolutional NeuralNetworks)、SPP-net(Spatial Pyramid Pooling -net)、Fast R-CNN、Faster R-CNN、R-FCN(Region-based Fully Convolutional Networks)、YOLO(You Only Look Once)、SSD(Single Shot MultiBox Detector)等。例如,上述目标检测算法的检测结果可以包括输入图像所包含的目标对象的类别和位置,其中,根据目标对象的类别可以判断输入图像中是否存在板书区域,根据目标对象的位置可以确定板书区域的位置。例如,上述目标检测算法一般通过返回目标对象的包围框(bounding box)(例如,包围框的左上角坐标和右下角坐标)来确定目标对象的位置。应当理解的是,在使用上述目标检测算法执行步骤S200之前,通常需要对目标检测模型进行训练,训练过程可以参考常见的训练方法,在此不再重复赘述;当然,也可以选用预先训练好的目标检测模型。
例如,步骤S200用于检测输入图像是否存在板书区域,并返回板书区域的包围框。由于不同教学场景(例如,教室)的场景复杂度不同,从不同教学场景的输入图像上提取板书区域的困难度也不尽相同。若基于输入图像的全场景提取板书区域,将在很大程度上受到复杂背景、人物遮挡或是自然场景变化的干扰,且对于全场景的输入图像进行操作会增大计算成本,降低运行速度。为了更好地对板书区域进行检测,可以将计算资源集中在特定小区域中,例如,在一些实施例中,可以采用YOLOv5模型从全场景图像中切分出特定区域。YOLOv5模型在灵活性上远胜于其他模型,并且在模型的快速部署上具有极强优势,兼具模型轻量且速度快的特点。YOLOv5模型可以输出包围框回归(bounding box regression)结果和分类结果(classification),从而,可以得到分类为板书区域的包围框,例如,可以得到板书区域的包围框的左上角坐标(X_leftTop, Y_leftTop)和右下角坐标(X_rightBottom, Y_rightBottom)。YOLOv5模型可以在输入图像中缩小检测范围,可以为后续的检测排除部分背景干扰。
例如,在一些实施例中,目标检测模型(例如,YOLOv5模型)输出的板书区域的包围框为检测到的板书区域的最小外接矩形框,该最小外接矩形框所包围的矩形区域即为步骤S200中的矩形检测区域。例如,在另一些实施例中,为了便于后续处理,可以将上述最小外接矩形框分别在上下左右四个方向上向外扩展若干像素(例如,10-20个像素,例如,15个像素),由此得到新的矩形框,该新的矩形框的面积略大于最小外接矩形框的面积,在此情况下,可以将该新的矩形框所包围的矩形区域作为步骤S200中的矩形检测区域。
例如,在一些实施例中,为了排除可能存在的误检情况,可以将板书区域的原始特征作为第一先验知识对矩形检测区域进行验证,以排除目标检测模型的错误分类,从而提高目标检测模型的准确率。图2为本公开至少一些实施例提供的一种输入图像中的矩形检测区域的示意图。示例性地,图2的输入图像中示出了两个变形的板书区域(由于变形而偏离矩形形状的PPT区域)及与之对应的两个矩形检测区域(如图2中的黑色矩形框所示)。应当理解的是,图2是示意性的,不应视作对本公开的实施例的限制。
例如,在一些实施例中,第一先验知识包括:板书区域的中心坐标通常位于输入图像的上半部分。相应地,矩形检测区域的中心坐标也通常位于输入图像的上半部分。例如,可以根据前述板书区域的包围框的左上角坐标和右下角坐标计算得到矩形检测区域的中心坐标,例如,矩形检测区域的中心坐标为((X_leftTop+ X_rightBottom)/2, (Y_leftTop+Y_rightBottom)/2)。
例如,在一些实施例中,第一先验知识还包括:板书区域的长宽比位于第一范围内。在现实世界中,板书区域的长宽比通常是已知的,例如,PPT区域的长宽比通常为4:3或16:9等,白板区域的长宽比通常为1.5:1等,黑板区域的猖狂比通常在3:1到4:1之间。考虑到输入图像中的板书区域的变形通常并不严重,前述矩形检测区域的长宽比应当接近于板书区域的长宽比。例如,在一些实施例中,可以将矩形检测区域的长宽比的要求设置为:
Figure 948773DEST_PATH_IMAGE001
其中,R表示矩形检测区域的长宽比,R0表示板书区域的长宽比,x表示可接受差异的百分比。从而,第一范围可以设置为[(1-x)*R0, (1+x)*R0)]。例如,x的数值可以根据实际需要进行设置,本公开的实施例对此不作限制。例如,在一些实施例中,x的取值范围可以设置为[5%, 15%],例如,x可以设置为10%,但不限于此。
对于理论上未发生变形的板书区域,通过步骤S200中的检测处理可以直接得出板书区域的具体位置,但是,在实际应用中,由于教学场景中的摄像头存在不同程度的畸变导致输入图像中的板书区域产生了不同程度的变形(输入图像中基本不存在恰好为矩形形状的板书区域),从而对板书区域的标定产生了一定的影响,很难直接通过步骤S200中确定板书区域的具体位置,因此,还需要对步骤S200中得到的矩形检测区域进行后续处理。
步骤S300:对矩形检测区域进行分析处理,以确定对应于板书区域的目标区域。
例如,通过步骤S300可以将矩形检测区域中的不属于板书区域的绝大部分或全部像素排除掉,从而确定板书区域的具体位置(即目标区域)。
图3为本公开至少一些实施例提供的一种对应于图1中所示的步骤S300的示例性流程图。例如,如图3所示,步骤S300可以包括以下步骤S310至步骤S340。
步骤S310:对矩形检测区域进行滤波处理,以得到对应于矩形检测区域的滤波图像,并根据滤波图像得到第一灰度图像。
例如,在一些实施例中,采用中值滤波法对矩形检测区域(将输入图像中的矩形检 测区域作为一幅图像)进行滤波处理。例如,中值滤波法是一种非线性平滑技术,中值滤波 法的远离是将每一个像素的灰度值用该像素的邻域窗口(例如,在以该像素为中心的
Figure 803596DEST_PATH_IMAGE002
的窗口中,除该像素以外的其他8个像素构成的八邻域窗口)内所有像素灰度值的中值来替 代,让周围的像素值更接近真实值,抑制无用的噪声点,排除冗余干扰。需要说明的是,本公 开的实施例对滤波处理所采用的方法不作限制。另外,还需要说明的是,在图像中,噪声点 所在的位置通常是灰度变化很大的地方,噪声点所在的位置容易被识别为伪边缘,因此,步 骤S310中的滤波处理可以改善后续步骤S330中的边缘检测处理的效果。
例如,在一些实施例中,输入图像为彩色图像(例如,RGB格式的彩色图像),相应地,滤波图像也为彩色图像;在此情况下,可以通过常用的转换公式将彩色图像(例如,滤波图像)转换为灰度图像(例如,第一灰度图像)。以将RGB格式的彩色图像转换为灰度图像为例,可以通过下述转换公式进行转换:
Gray = R*0.299 + G*0.587 + B*0.114
其中,Gray表示灰度图像的亮度信息,R、G和B分别表示RGB格式的彩色图像的红色信息(即红色通道的数据信息)、绿色信息(即绿色通道的数据信息)和蓝色信息(即蓝色通道的数据信息)。
例如,在另一些实施例中,输入图像为灰度图像,相应地,滤波图像也为灰度图像;在此情况下,可以直接将滤波图像作为第一灰度图像。
步骤S320:对第一灰度图像进行显著性区域检测处理,以得到第二灰度图像;
例如,在一些实施例中,可以采用基于全局对比度的显著性检测方法对第一灰度图像进行显著性区域检测。例如,在一些实施例中,如图4所示,步骤S320可以包括以下步骤S321和步骤S322。
步骤S321:计算第一灰度图像上的每个像素在第一灰度图像上的全局对比度,作为该每个像素的显著值。
例如,基于全局对比度的显著性检测方法可以计算每个像素在整个图像(即第一灰度图像)上的全局对比度作为该每个像素的显著值,也即将每个像素与图像中的其他像素在灰度值上的距离之和作为该每个像素的显著值。例如,可以通过以下公式计算图像中的任一像素的显著值:
Figure 583333DEST_PATH_IMAGE003
其中,
Figure 978543DEST_PATH_IMAGE004
表示图像I中的第k个像素的显著值,
Figure 792915DEST_PATH_IMAGE005
表示图像I中第k个像素的灰 度值,
Figure 802328DEST_PATH_IMAGE006
表示图像I中第i个像素的灰度值。该方法可以突出矩形检测区域中最显著的物体 (例如,图2中所示的亮度较高的PPT区域),且具有较高的抗噪性。
步骤S322:基于第一灰度图像上的所有像素的显著值,得到第二灰度图像,其中,第二灰度图像上的任一像素的灰度值为第一灰度图像上对应于该任一像素的某一像素的显著值。
例如,在一些实施例中,可以将第一灰度图像中的每个像素的灰度值替换为该每个像素的显著值,由此得到第二灰度图像。
步骤S330:对第二灰度图像进行边缘检测处理和二值化处理,以得到二值图像;
例如,在一些实施例中,可以采用Sobel算法、Canny算法和Laplacian算法等边缘检测算法中的任一种对第二灰度图像进行边缘检测处理。例如,在一些实施例中,如图5所示,步骤S330可以包括以下步骤S331至步骤S334。
步骤S331:计算第二灰度图像上的所有像素的灰度梯度,以确定初选边缘像素。
例如,通过计算灰度梯度可以确定图像中的物体边缘,因为灰度梯度能体现灰度变化明显的地方,而物体边缘也是灰度变化明显的地方。当然步骤S331只能得到可能的物体边缘(即初选边缘像素),因为灰度变化大的地方可能是物体边缘,也可能不是物体边缘。基于步骤S331,就得到了初选边缘像素的集合。
步骤S332:对初选边缘像素进行非极大值抑制操作,以确定次选边缘像素。
例如,通常灰度变化明显的地方都比较集中,将局部范围内的梯度方向上,灰度变化最大(即梯度值最大)的保留下来,其它的不保留,这样可以剔除掉一大部分的初选边缘像素,从而将有多个像素宽的物体边缘变成一个单像素宽的物体边缘。通过非极大值抑制操作可以消除误检的边缘。
步骤S333:对次选边缘像素进行双阈值筛选操作,以得到终选边缘像素。
例如,通过非极大值抑制操作后,仍然可能有很多的次选边缘像素不属于真正的物体边缘。可以进一步设置双阈值,即高阈值和低阈值,以进性双阈值筛选操作。如果某一像素的灰度梯度值高于高阈值,则保留,并将其设置为强边缘像素;如果某一像素的灰度梯度值低于低阈值,则舍弃;如果某一像素的灰度梯度值介于高阈值和低阈值之间,则将其设置为弱边缘像素,并从该像素的邻域窗口(例如,八邻域)内寻找灰度梯度值,如果存在灰度梯度值高于高阈值,则保留,否则舍弃。这样做的目的是只保留强边缘像素的话,有些边缘可能不闭合,需要从弱边缘像素中进行补充,使得边缘尽可能的闭合。
由于双阈值的选取对边缘检测处理的结果影响较大,本公开的实施例提供一种可根据不同图像自动确定高低阈值的方式:首先确定图像(例如,第二灰度图像)梯度的中位数v,设置一个固定参数a0(a0>0且a0<1),并计算得到低阈值(1-a0)*v和高阈值(1+a0)*v。从而,可以对不同场景不同图像进行更加合理的边缘检测处理,更加清晰的展现物体轮廓(例如,板书区域的轮廓)。例如,a0的取值可以根据实际需要进行设置,本公开的实施例对此不作限制。例如,在一些实施例中,a0的取值范围可以设置为[0.28, 0.37],例如,a0可以设置为0.33,但不限于此。
步骤S334:根据终选边缘像素,对第二灰度图像进行二值化处理,以得到二值图像。
例如,在一些实施中,可以将第二灰度图像中的所有终选边缘像素的灰度平均值作为阈值,对第二灰度图像进行二值化处理,以得到二值图像。需要说明的是,本公开包括但不限于此。例如,在实际应用中,还可以采用其他任意可行的方式确定二值化处理中的阈值。
步骤S340:对二值图像进行连通区域分析处理,以确定对应于板书区域的目标区域。
例如,在一些实施例中,如图6所示,步骤S340可以包括以下步骤S341值步骤S343。
步骤S341:确定二值图像上的所有连通区域以及每个连通区域的外接矩形框。
例如,连通区域一般是指图像中具有相同像素值且位置相邻的前景像素组成的图像区域。例如,可以采用两遍扫描(Two-Pass)法或种子填充(Seed-Filling)法或OpenCV的connectedComponentsWithStates函数等常见算法在二值图像中寻找连通区域;然后,可以采用最小外接矩形算法(例如,包括但不限于OpenCV的minAreaRect函数)确定每个连通区域的外接矩形框。例如,在一些实施例中,可以得到每个连通区域的外接矩形框的左上角坐标(x1, y1)和右下角坐标(x2, y2)。
步骤S342:选择外接矩形框的面积从大到小排序为第2到第N的连通区域作为待选区域,其中,N为大于等于2的整数。
例如,在一些实施例中,每个连通区域的外接矩形框的面积可以根据其左上角坐标(x1, y1)和右下角坐标(x2, y2)计算得到,例如,计算公式可以表示为:
Figure 69361DEST_PATH_IMAGE007
其中,Area表示外接矩形框的面积。
例如,在二值图像中,背景像素一般都是连通的,且背景区域(即背景像素形成的连通区域)对应的外接矩形框的面积往往是最大的,因此,在步骤S342中,可以直接排除外接矩形框的面积最大的连通区域,也即可以直接排除背景区域。
例如,N可以根据实际需要进行设置,本公开的实施例对此不作限制。例如,在一些实施例中,N的取值范围可以设置为[2, 5],例如N=2,又例如N=5,等等。
步骤S343:根据板书区域的第二先验知识,对待选区域进行验证,以确定对应于板书区域的目标区域。
例如,在一些实施例中,第二先验知识包括:板书区域的中心坐标与二值图像的中心坐标之间的距离小于距离阈值。相应地,板书区域的外接矩形框的中心坐标与二值图像的中心坐标之间的距离也小于距离阈值。例如,可以根据前述每个连通区域的外接矩形框的左上角坐标和右下角坐标计算得到每个连通区域的外接矩形框的中心坐标,例如,每个连通区域的外接矩形框的中心坐标为((x1+ x2)/2, (y1+y2)/2);然后,可以计算每个连通区域的外接矩形框的中心坐标与二值图像的中心坐标之间的距离,其中,距离小于距离阈值的连通区域很可能就是对应于板书区域的目标区域。例如,在一些示例中,每个连通区域的外接矩形框的中心坐标与二值图像的中心坐标之间的距离包括在二值图像的宽度方向上的第一距离和在二值图像的高度方向上的第二距离,相应地,距离阈值包括在二值图像的宽度方向上的第一距离阈值和在二值图像的高度方向上的第二距离,其中,第一距离应当小于第一距离阈值,第二距离应当小于第二距离阈值。例如,第一距离阈值可以设置为二值图像的宽度的5%~30%或者其他合适的比例等,同样地,第二距离阈值可以设置为二值图像的高度的5%~30%或者其他合适的比例等。
例如,在一些实施例中,第二先验知识还包括:板书区域的长宽比在第二范围内。例如,第二范围可以设置为[(1-y)*R0, (1+y)*R0)],其中,R0表示板书区域的长宽比,y表示可接受差异的百分比。例如,y的数值可以根据实际需要进行设置,本公开的实施例对此不作限制。例如,在一些实施例中,y的取值范围可以设置为[5%, 15%],例如,y可以设置为10%,但不限于此。例如,第一二范围可以与第一范围相同,当然,二者也可以不同。
图7为本公开至少一些实施例提供的一种连通区域分析处理的结果示意图。示例性地,如图7所示,在对二值图像进行连通区域分析处理时,可以得到多个连通区域(包括背景区域、板书区域及其他未标识的连通区域,如图7中不同灰度的区域所示),其中,在所有连通区域的外接矩形框中,背景区域的外接矩形框的面积大小排序通常为第一,板书区域的外接矩形框的面积大小排序通常为第二。需要说明的是,为了显示的简洁,图7中省略了各个连通区域的外接矩形框,同时,为了区分不同的连通区域,使用不同灰度表示不同的连通区域,因此,图7区别于原本的二值图像。应当理解的是,图7是示意性的,不应视作对本公开的实施例的限制。
步骤S400:确定目标区域的四个顶点。
例如,在一些实施例中,如图8所示,步骤S400可以包括以下步骤S410至步骤S440。
步骤S410:使用轮廓检测算法对目标区域进行轮廓检测处理,以得到至少一个轮廓。
例如,在一些实施例中,可以采用OpenCV的findContours函数等轮廓检测算法对目标区域进行轮廓检测处理,以提取至少一个轮廓。例如,在一些实施例中,可以对前述二值图像(包括目标区域)进行轮廓检测处理。例如,在一些实施例中,在进行轮廓检测处理时,目标区域(即板书区域)中的文字或图像等内容的轮廓也可以被提取出来。
例如,每一个轮廓都包括一个对应的轮廓列表,该轮廓列表包括该待选轮廓的所有角点的信息(例如,角点的坐标位置等)。
步骤S420:对该至少一个轮廓进行筛选处理,以得到至少一个备选轮廓。
例如,在一些实施例中,可以根据以下筛选原则对至少一个轮廓进行筛选处理:(1)轮廓围成的区域的面积较大;(2)轮廓围成的区域的周长较大。其原理是,目标区域中的面积较大或周长较大的轮廓通常与板书区域的边缘及角点有关。
步骤S430:基于该至少一个备选轮廓,确定备选角点集合。
例如,在一些实施例中,可以基于该至少一个备选轮廓的轮廓列表,计算每个角点对应的顶角的角度值,并筛选得到备选角点集合。在实际应用中,每个轮廓列表通常都由若干角点组成,但无法确定哪一个角点对应于板书区域的顶点。鉴于背景边缘信息杂乱,可能会存在不属于板书区域的角点出现在轮廓列表中。例如,对于板书区域的顶点(板书区域包括四个顶点)而言,通常可以确定如下先验信息:板书区域的顶点处的角度变化比平行线上的角点的角度变化较大。
图9A为本公开至少一些实施例提供的一种对应于图8中所示的步骤S430的示例性流程图。例如,在一些实施例中,如图9A所示,步骤S430可以包括以下步骤S431至步骤S432。
步骤S431:计算至少一个备选轮廓的每个角点对应的顶角的角度值;
例如,在一些实施例中,可以根据每个备选轮廓的轮廓列表,确定每个角点的坐标位置以及与该角点相邻的两个角点的坐标位置。以某一角点B为例,与角点B相邻的两个角点为角点A和角点C,角点A、B、C的坐标分别为(xA, yA)、(xB, yB)、(xC, yC),角点B对应的顶角为∠ABC,则角点A、B、C构成的三角形的三条边a、b、c的大小分别为:
Figure 268261DEST_PATH_IMAGE008
角点B对应的顶角∠ABC的角度值可以根据以下公式(三角形余弦定理)进行计算:
Figure 874823DEST_PATH_IMAGE009
其中,
Figure 868187DEST_PATH_IMAGE010
表示角点B对应的顶角∠ABC的角度值。
步骤S432:根据至少一个备选轮廓的每个角点对应的顶角的角度值,对该至少一个备选轮廓的每个角点进行筛选,以得到多个第一备选角点,其中,备选角点集合包括该多个第一备选角点。
例如,对于理论上未发生变形的板书区域,其四个顶点对应的顶角均为直角;然而,考虑到画面变形,输入图像中的板书区域的各个顶点对应的顶角可能略微偏离直角。例如,在一些实施例中,可以将顶角的角度值位于预设角度范围内的角点作为第一备选角点。例如,预设角度范围可以根据实际需要进行设置,本公开的实施例对此不作限制。例如,在一些实施例中,预设角度范围可以设置为60°~135°或者75°~125°等。从而,经过筛选得到的备选角点集合中的角点(即多个第一备选角点)很可能位于板书区域的某一顶点附近(包括某一角点本身就是板书区域的某一顶点的情形)。
例如,在另一些实施例中,可以基于该至少一个备选轮廓的轮廓列表,对每个备选轮廓进行四边形拟合,以得到备选角点集合。例如,步骤S420中得到的备选轮廓通常为形状不一的多边形,通过对每个备选轮廓进行四边形拟合,并将拟合得到的四边形的四个顶点作为备选角点(例如,第二备选角点),可以减小备选角点集合的数据规模,有利于提高图像处理方法的运行速度。
图9B为本公开至少一些实施例提供的另一种对应于图8中所示的步骤S430的示例性流程图。例如,在一些实施例中,如图9B所示,步骤S430可以包括以下步骤S433至步骤S435。
步骤S433:根据角点数量阈值对至少一个备选轮廓进行筛选,得到至少一个预选轮廓。
例如,即使考虑到画面变形,输入图像中的板书区域对应的轮廓包括的角点数量通常也不会太多,因此,可以认为角点数量大于角点数量阈值的备选轮廓很可能不包括板书区域的顶点。例如,角点数量阈值可以根据实际需要进行设置,本公开的实施例对此不作限制。例如,在一些实施例中,角点数量阈值的取值范围可以设置为[6, 10],例如,角点数量阈值可以设置为8,但不限于此。
步骤S434:按照拟合精度对每个预选轮廓进行折线化拟合,将每个预选轮廓中的距离大于拟合精度的角点舍弃,距离小于拟合精度的角点保留,以得到闭合的拟合图形。
例如,在一些实施例中,第一次折线化拟合过程中的拟合精度(即拟合精度初始值)可以设置为b0*Length,其中,b0>0且b0<1,Length表示对应的预选轮廓的轮廓周长。例如,在一些实施例中,b0的取值范围可以设置为[0.005, 0.02],例如,b0可以设置为0.01,但不限于此。
步骤S435:计算拟合图形的面积和角点数量,将面积小于面积阈值且角点数量小于4的拟合图形对应的预选轮廓舍弃,否则,提高拟合精度的数值并进行下一次折线化拟合,直至找到面积不小于面积阈值且角点数量等于4的拟合图形为止,将最终确定的拟合图像的四个顶点作为第二备选角点,其中,备选角点集合包括多个第二备选角点。
例如,面积阈值可以根据实际需要进行设置,本公开的实施例对此不作限制。例如,在一些实施例中,可以设置一个固定参数c0(c0>0且c0<1),根据步骤S300确定的目标区域(例如,具体地,步骤S343确定的目标区域)计算目标区域的面积S0,并计算得到面积阈值c0*S0。例如,c0的取值可以根据实际需要进行设置,本公开的实施例对此不作限制。例如,在一些实施例中,c0的取值范围可以设置为[0.1, 0.3],例如,c0可以设置为0.2,但不限于此。当然,在一些实施例中,为了提高运行速度,可以将上述目标区域的面积S0替换为目标区域的外接矩形框的面积。
例如,在一些实施例中,在拟合精度初始值设置为b0*Length的情况下,之后的每次折线化拟合过程中的拟合精度可以在上一次折线化拟合过程中的拟合精度的基础上增加例如0.5*b0*Length等。
例如,在一些实施例中,可以同时采用以上两种方式以实现步骤S430的操作,也就是说,步骤S430可以包括上述步骤S431至步骤S435;在此情况下,备选角点集合包括多个第一备选角点和多个第二备选角点,从而,可以提高后续步骤S440中确定的目标区域的四个顶点的精度。
例如,步骤S430中得到的备选角点集合包括分布在板书区域的各顶点附近的若干角点。
步骤S440:基于备选角点集合,确定目标区域的四个顶点。
例如,在一些实施例中,可以对备选角点集合中的角点(即上述第一备选角点和/或第二备选角点)进行第一聚类操作,以得到四个聚类中心,并将该四个聚类中心作为目标区域的四个顶点。例如,在一些实施例中,可以采用K均值聚类算法进行上述第一聚类操作。
例如,K均值聚类算法的主要步骤包括:将预测数据(即备选角点集合)分为K组,随机选取K个对象(对象即备选角点集合中的角点)作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。
例如,在本公开的实施例中,K值设置为4,将备选角点结合中的所有角点归为4类,聚类过程中采用的距离是欧式距离(具体地,二维空间的欧式距离)。例如,可以根据待归类样本的坐标位置和聚类中心的坐标位置计算二者之间的欧式距离,其中,上述坐标位置均为图像坐标系下的坐标位置。最终,可以得到4个聚类中心,作为目标区域的四个顶点,即预测了板书区域的四个顶点。也就是说,实现了对输入图像中变形的板书区域的标定。
步骤S500:根据目标区域的四个顶点,对目标区域进行坐标变换,以得到校正后的板书区域图像。
例如,与实际的板书区域对应,校正后的板书区域图像通常为矩形。例如,在一些实施例中,可以根据约束条件进行步骤S500中的坐标变换操作,其中,约束条件包括:校正后的板书区域图像为矩形,目标区域的四个顶点经过坐标变换后对应于矩形的四个顶点。
例如,在一些示例中,可以基于上述约束条件,根据以下坐标变换公式计算坐标变换矩阵:
Figure 622516DEST_PATH_IMAGE011
其中,(U, V)表示校正后的板书区域图像中的坐标,(X, Y)表示输入图像中的坐 标,a11、a21、a31、a12、a22、a32、a13、a23、a33为
Figure 359528DEST_PATH_IMAGE002
的坐标变换矩阵中的相应元素,且a33 =1。例如,可以先根据上述坐标变换公式以及目标区域的四个顶点在输入图像中的坐标位 置以及校正后的板书区域图像的四个顶点的坐标位置的对应关系,确定坐标变换矩阵;然 后,根据上述坐标变换公式,对目标区域(以及目标区域周围的部分区域)中的各个像素点 进行坐标变换,以得到校正后的板书区域图像中的各个像素点。从而,实现了对输入图像中 变形的板书区域的校正。
图10A为本公开至少一些实施例提供的一种输入图像的示意图,图10B为采用图1所示的图像处理方法对图10A所示的输入图像进行处理得到的一种校正后的板书区域图像的示意图。需要说明的是,图10B仅示例性地示出了采用图1所示的图像处理方法对图10A所示的输入图像右侧的板书区域(即图10A的方框中所示的PPT区域)进行处理得到的校正后的板书区域图像。例如,与图10A所示的输入图像相比,图10B所示的校正后的板书区域图像可以辅助学生将观看的兴趣点集中于板书区域,从而有助于提高学习效率。
需要说明的是,对于包括多帧图像的课堂教学视频而言,由于人物遮挡或光线变化等因素的存在,可能会导致不同帧图像对应的输出结果(即标定的板书区域的顶点坐标)不一致的问题。为了解决上述问题,可以采用二次验证的方式再次确认目标区域(即板书区域)的四个顶点的坐标。
图11为本公开至少一些实施例提供的另一种图像处理方法的流程图。例如,如图11所示,该图像处理方法包括以下步骤S600至步骤S900。
步骤S600:获取教学场景的视频序列。
例如,与步骤S100中的操作类似,可以通过摄像头对教学场景的讲台方向进行拍摄得到视频序列。例如,视频序列通常包括若干帧图像,例如,部分帧图像中可能存在板书区域的顶点被人物(例如,教师等)遮挡的问题,从而,对这部分帧图像进行板书区域标定时无法准确标定出板书区域的顶点的位置(即存在不准确的预测顶点);进一步地,基于上述不准确的预测顶点对板书区域进行校正,可能会导致校正后的板书区域图像的画面仍然存在变形,从而不利于改善观看效果。
步骤S700:从视频序列中抽取多帧图像分别作为输入图像,以得到目标区域在该多帧图像中的每帧图像上的四个顶点。
例如,在一些实施例中,可以从视频序列中随机抽取例如10~20帧图像分别作为输入图像,本公开包括但不限于此。
例如,在将抽取的每帧图像作为输入图像之后,可以采用前述步骤S100至步骤S500实现步骤S700的操作,具体实现过程和细节可以参考前述相关描述,在此不再重复赘述。
步骤S800:将目标区域在该多帧图像中的每帧图像上的四个顶点作为预测顶点,基于预测顶点确定目标区域的四个最终预测顶点。
例如,在一些实施例中,如图12所示,步骤S800可以包括以下步骤S810至步骤S850。
步骤S810:根据目标区域的每个顶点对应的预测顶点的坐标,对每个顶点对应的预测顶点进行第二聚类操作,以得到每个顶点对应的至少一个预测子类,并将每个顶点对应的当前包括最多预测顶点的预测子类的中心坐标作为所述每个顶点的当前预测坐标。
例如,在一些实施例中,可以计算每个顶点对应的多个预测顶点中任意两个预测顶点的欧式距离,将某一预测顶点及其附近例如三个像素之内的预测顶点归为一个预测子类,并将该预测子类的中心点作为下一步的预测顶点,重复上述操作,直到没有预测顶点被重新分配给不同的预测子类或者没有预测子类的中心坐标再发生变化或者误差平方和局部最小。从而,可以实现第二聚类操作。
步骤S820:根据目标区域的四个顶点的当前预测坐标,确定任意两个相邻的顶点的当前预测坐标的连线到水平线的第一夹角值。
例如,在一些实施例中,可以计算任意两个相邻的顶点的当前预测坐标的连线的斜率,然后根据斜率和三角公式确定该连线到水平线的第一夹角值。需要说明的是,当斜率趋向于无穷大时,表明该连线垂直于水平线,即该连线到水平线的第一夹角值为90°。
例如,在另一些实施例中,可以在某一顶点的当前预测坐标的平行于水平线的方向上任取一像素点坐标,根据前述三角形余弦定理计算两个相邻的顶点的当前预测坐标的连线和该某一个顶点的当前预测坐标与该像素点坐标的连线之间的夹角值,即可得到两个相邻的顶点的当前预测坐标的连线到水平线的第一夹角值。
步骤S830:根据任意两个相邻的顶点的当前预测坐标,在该多帧图像中的某帧图像上确定一个预测矩形区域,其中,该某帧图像经过滤波处理、显著性区域检测处理以及边缘检测处理和二值化处理,该任意两个相邻的顶点的当前预测坐标的连线为预测矩形区域的对角线,预测矩形区域的每条边平行或垂直于水平线。
例如,步骤S830中的滤波处理、显著性区域检测处理以及边缘检测处理和二值化处理可以参考前述步骤S310、步骤S320、步骤S330的相关描述,具体实现过程和细节在此在重复赘述。例如,经过上述处理之后,可以根据该某帧图像得到一幅二值图像,从而,可以在该二值图像上确定预测矩形区域;该预测矩形区域中包括目标区域(即板书区域)的边缘像素(例如,终选边缘像素)信息。考虑到画面变形,在预测矩形区域中,板书区域的边界不再是水平或竖直的边界,而是表现为弯曲的弧线段。
步骤S840:在预测矩形区域中寻找直线,以确定一条曲线段,其中,该曲线段包括多条线段,并基于该多条线段确定该曲线段的平均切线的斜率,基于该平均切线的斜率确定该平均切线到水平线的第二夹角值。
例如,在一些实施例中,步骤S840可以包括以下步骤S841至步骤S843。
步骤S841:将预测矩形区域中的边缘像素形成的线段从笛卡尔坐标系转换到霍夫空间,以确定若干线段。
例如,在笛卡尔坐标系中的一条直线对应霍夫空间的一个点,如果在笛卡尔坐标系下的点共线,这些点在霍夫空间对应的直线交与一点。故可根据这一特性检测笛卡尔坐标系中的直线。该方法与其他寻找直线的方法相比,可以更好的减少噪声干扰。需要说明的是,根据步骤(1)通常可以在预测矩形区域中得到许多不连续的线段。
步骤S842:根据线段首尾位置是否重叠或相近,判断上述若干线段是否属于同一条曲线,以确定一条曲线段。
例如,步骤S842中,判断是否重叠或相近的阈值可以根据实际需要进行设置。例如,该阈值可以设置为例如5个像素,也即,若一条线段的某一端点和另一条线段的某一端点之间的距离在5个像素之内,则认为这两条线段首尾位置重叠或相近。根据步骤(2)可以确定一条曲线段,该曲线段对应于输入图像中的板书区域的边界。
步骤S843:计算曲线段中的所有线段的斜率的平均值作为曲线段的平均切线的斜率,并基于平均切线的斜率确定平均切线到水平线的第二夹角值。
例如,可以根据以下公式计算曲线段中的所有线段的斜率的平均值:
Figure 882914DEST_PATH_IMAGE012
其中,k表示曲线段中的所有线段的斜率的平均值,n表示曲线段中的所有线段的 数目,i表示第i条线段,(
Figure 1173DEST_PATH_IMAGE013
Figure 242799DEST_PATH_IMAGE014
)、(
Figure 517922DEST_PATH_IMAGE015
Figure 161393DEST_PATH_IMAGE016
)分别表示线段两端坐标。然后,可以根据三角公式 确定曲线段的平均切线到水平线的第二夹角值。
步骤S850:根据第一夹角值和第二夹角值,确定该任意两个相邻的顶点的最终预测坐标。
例如,在一些实施例中,步骤S850可以包括以下步骤(1)。
(1)响应于第一夹角值和第二夹角值的差值不大于第一阈值,将该任意两个相邻的顶点的当前预测坐标作为所述任意两个相邻的顶点的最终预测坐标。例如,第一阈值可以根据实际需要进行设置,本公开的实施例对此不作限制。例如,在一些实施例中,第一阈值可以设置为例如3°,但不限于此。
例如,在一些实施例中,步骤S850还可以包括以下步骤(2)-(4)。
(2)响应于第一夹角值和第二夹角值的差值大于第一阈值,判断该任意两个相邻的顶点的当前预测坐标与所述曲线段的最小距离是否不大于第二阈值。例如,在第一夹角值和第二夹角值的差值大于第一阈值,说明该任意两个相邻的顶点至少之一的当前预测坐标存在预测错误,其当前预测坐标不适合作为其最终预测坐标。此处存在两种情况:一种为仅有一个顶点的当前预测坐标存在预测错误,另一种为两个顶点的当前预测坐标均存在预测错误。以下步骤(3)和(4),可以根据判断结果对上述两种情况分别进行处理。例如,每个顶点的当前预测坐标与曲线段的最小距离即为每个顶点的当前预测坐标与曲线段的所有线段的距离的最小者,例如,每个顶点的当前预测坐标与每条线段的距离可以采用欧式距离进行计算。
(3)响应于该任意两个相邻的顶点之一的当前预测坐标与该曲线段的最小距离不大于第二阈值且该任意两个相邻的顶点之另一的当前预测坐标与该曲线段的最小距离大于第二阈值,根据平均切线的斜率确定一条经过该任意两个相邻的顶点之一的当前预测坐标的第一直线,同时根据与该任意两个相邻的顶点之一相对的顶点的当前预测坐标以及该任意两个相邻的顶点之另一的当前预测坐标确定第二直线,将该任意两个相邻的顶点之一的当前预测坐标作为该任意两个相邻的顶点之一的最终预测坐标,将该第一直线和第二直线的交点的坐标作为该任意两个相邻的顶点之另一的最终预测坐标。应当理解的是,与该任意两个相邻的顶点之一相对的顶点即为与该任意两个相邻的顶点之另一相邻且不同于该任意两个相邻的顶点之一的一个顶点。
(4)响应于该任意两个相邻的顶点的当前预测坐标与该曲线段的最小距离均大于第二阈值,舍弃该任意两个相邻的顶点中的每个顶点对应的当前包括最多预测顶点的预测子类,将该任意两个相邻的顶点中的每个顶点对应的剩余的包括最多预测顶点的预测子类的中心坐标作为该任意两个相邻的顶点中的每个顶点的当前预测坐标,直到确定该任意两个相邻的顶点中的每个顶点的最终预测坐标为止。
例如,在极少数情况下,根据上述步骤(1)-(4)可能仍然无法确定目标区域的四个顶点的最终预测坐标(即无法确定目标区域的四个最终预测顶点)。因此,在一些实施例中,步骤S850还可以包括以下步骤(5)。
(5)响应于该任意两个相邻的顶点对应的全部预测子类均被舍弃,根据该任意两个相邻的顶点对应的曲线段的平均切线的斜率确定该任意两个相邻的顶点对应的曲线段的平均切线,根据与该任意两个相邻的顶点之一相对的顶点的当前预测坐标以及该任意两个相邻的顶点之另一的当前预测坐标确定第三直线,根据与该任意两个相邻的顶点之另一相对的顶点的当前预测坐标以及该任意两个相邻的顶点之一的当前预测坐标确定第四直线,将该平均切线和第三直线的交点的坐标作为该任意两个相邻的顶点之一的最终预测坐标,将该平均切线和第三直线的交点的坐标作为该任意两个相邻的顶点之另一的最终预测坐标。
应当理解的是,步骤(3)中的第二直线的确定方式可以参考步骤(1)-(5)的相关描述,在此不再重复赘述。类似地,步骤(5)中的第三直线和第四直线的确定方式也可以参考步骤(1)-(5)的相关描述,在此不再重复赘述。还应当理解的是,在步骤(4)中将该任意两个相邻的顶点中的每个顶点对应的剩余的包括最多预测顶点的预测子类的中心坐标作为该任意两个相邻的顶点中的每个顶点的当前预测坐标的情况下,重新确定该任意两个相邻的顶点中的每个顶点的最终预测坐标的过程可以参考前述步骤S820和步骤S850(例如步骤(1)-(5))的相关描述;还应当理解的是,在此过程中,可以直接使用之前根据步骤S830和步骤S840确定的第二夹角值,从而不用重复执行步骤S830和步骤S840。
应当理解的是,根据上述步骤S810至步骤S850,可以确定目标区域的四个顶点的最终预测坐标,也即,可以确定目标区域的四个最终预测顶点。
步骤S900:根据目标区域的四个最终预测顶点,对视频序列的每帧图像中的目标区域进行坐标变换,以得到与视频序列的每帧图像对应的校正后的板书区域图像。
例如,步骤S900的操作可以参考前述步骤S500的相关描述,具体实现过程和细节在此不再重复赘述。例如,在一些实施例中,基于视频序列的每帧图像对应的校正后的板书区域图像,可以得到校正后的视频序列。
图13A为本公开至少一些实施例提供的一种输入图像的示意性框图,图13B为图13A所示的输入图像中的目标区域(即板书区域)的四边形边界的示意图,图13C为图13A所示的输入图像中的目标区域(即板书区域)的四个顶点的示意图。例如,图13A示出了采用图1所示的图像处理方法确定的目标区域的四个顶点(如图13A中的黑点所示),其中,由于人物的遮挡,图13A中左下角的顶点明显偏离其真实位置。例如,图13A为某一视频序列中的一帧图像,该视频序列中的其余帧图像均未示出。例如,图13B示出了采用图11所示的图像处理方法确定的目标区域的四边形边界,其中,该四边形边界的每条边为相邻的两个顶点的连线、前述第一直线、前述第二直线、前述第三直线和前述第四直线之一。例如,图13C示出了采用图11所示的图像处理方法确定的目标区域的四个顶点(即四个最终预测顶点,如图13C中的黑点所示),与图13A相比,图13C中左下角的顶点更接近于其真实位置。因此,图11所示的图像处理方法可以克服由于人物遮挡或光线变化等因素导致的不同帧图像对应的输出结果(即标定的板书区域的顶点坐标)不一致的问题。
需要说明的是,在本公开的实施例中,上述图像处理方法的流程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行。虽然上文描述的图像处理方法的流程包括特定顺序出现的多个操作,但是应该清楚地了解,多个操作的顺序并不受限制。上文描述的图像处理方法可以执行一次,也可以按照预定条件执行多次。
本公开的实施例提供的图像处理方法,可以对输入图像中变形的板书区域进行标定及校正,以得到校正后的板书区域图像。该图像处理方法只需借助于低成本的固定摄像头,无需再安装其他额外设备,具有较高的实用性,适合于大范围普及推广;同时,无需对输入图像进行手动数据标注,也无需在教学场景中放置标定板并进行相机标定,可以大大节省人力成本;再者,基于板书区域的自动标注和校正结果,可辅助进行相应区域的特定处理,例如,可以辅助学生将观看的兴趣点集中于板书区域。
本公开至少一些实施例还提供一种图像处理装置。图14为本公开至少一些实施例提供的一种图像处理装置的示意性框图。例如,如图14所示,该图像处理装置100包括存储器110和处理器120。
例如,存储器110用于非暂时性存储计算机可读指令,处理器120用于运行该计算机可读指令,该计算机可读指令被处理器120运行时执行本公开任一实施例提供的图像处理方法。
例如,存储器110和处理器120之间可以直接或间接地互相通信。例如,在一些示例中,如图2所示,该图像处理装置100还可以包括系统总线130,存储器110和处理器120之间可以通过系统总线130互相通信,例如,处理器120可以通过系统总线130访问存储器110。例如,在另一些示例中,存储器110和处理器120等组件之间可以通过网络连接进行通信。网络可以包括无线网络、有线网络、和/或无线网络和有线网络的任意组合。网络可以包括局域网、互联网、电信网、基于互联网和/或电信网的物联网(Internet of Things)、和/或以上网络的任意组合等。有线网络例如可以采用双绞线、同轴电缆或光纤传输等方式进行通信,无线网络例如可以采用3G/4G/5G移动通信网络、蓝牙、Zigbee或者WiFi等通信方式。本公开对网络的类型和功能在此不作限制。
例如,处理器120可以控制图像处理装置中的其它组件以执行期望的功能。处理器120可以是中央处理单元(CPU)、张量处理器(TPU)或者图形处理器GPU等具有数据处理能力和/或程序执行能力的器件。中央处理器(CPU)可以为X86或ARM架构等。GPU可以单独地直接集成到主板上,或者内置于主板的北桥芯片中。GPU也可以内置于中央处理器(CPU)上。
例如,存储器110可以包括一个或多个计算机程序产品的任意组合,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、闪存等。
例如,在存储器110上可以存储一个或多个计算机指令,处理器120可以运行所述计算机指令,以实现各种功能。在计算机可读存储介质中还可以存储各种应用程序和各种数据,例如输入图像、视频序列、校正后的板书区域图像以及应用程序使用和/或产生的各种数据等。
例如,存储器110存储的一些计算机指令被处理器120执行时可以执行根据上文所述的图像处理方法中的一个或多个步骤。
例如,如图14所示,图像处理装置100还可以包括允许外部设备与图像处理装置100进行通信的输入接口140。例如,输入接口140可被用于从外部计算机设备、从用户等处接收指令或数据(例如,输入图像、视频序列等)。图像处理装置100还可以包括使图像处理装置100和一个或多个外部设备相互连接的输出接口150。例如,图像处理装置100可以通过输出接口150输出图像处理结果(例如,校正后的板书区域图像)等。通过输入接口140和输出接口150与图像处理装置100通信的外部设备可被包括在提供任何类型的用户可与之交互的用户界面的环境中。用户界面类型的示例包括图形用户界面、自然用户界面等。例如,图形用户界面可接受来自用户采用诸如键盘、鼠标、遥控器等之类的输入设备的输入,以及在诸如显示器之类的输出设备上提供输出。此外,自然用户界面可使得用户能够以无需受到诸如键盘、鼠标、遥控器等之类的输入设备强加的约束的方式来与图像处理装置100交互。相反,自然用户界面可依赖于语音识别、触摸和指示笔识别、屏幕上和屏幕附近的手势识别、空中手势、头部和眼睛跟踪、语音和语义、视觉、触摸、手势、以及机器智能等。
另外,图像处理装置100尽管在图14中被示出为单个系统,但可以理解,图像处理装置100也可以是分布式系统,还可以布置为云设施(包括公有云或私有云)。因此,例如,若干设备可以通过网络连接进行通信并且可共同执行被描述为由图像处理装置100执行的任务。例如,在一些实施例中,可以通过客户端获取输入图像或视频序列,并将输入图像或视频序列上传至服务器;服务器基于接收的输入图像或视频序列执行图像处理的过程后将校正后的板书区域图像或者校正后的板书区域图像序列(即视频序列的每帧图像对应的校正后的板书区域图像)返回客户端,以提供给用户。
例如,关于图像处理方法的实现过程的详细说明可以参考上述图像处理方法的实施例中的相关描述,重复之处在此不再赘述。
例如,在一些示例中,该图像处理装置可以包括但不限于智能手机、平板电脑、个人计算机、个人数字助理(Personal Digital Assistant,PDA)、可穿戴设备、头戴显示设备、服务器等。
需要说明的是,本公开的实施例提供的图像处理装置是示例性的,而非限制性的,根据实际应用需要,该图像处理装置还可以包括其他常规部件或结构,例如,为实现图像处理装置的必要功能,本领域技术人员可以根据具体应用场景设置其他的常规部件或结构,本公开的实施例对此不作限制。
本公开的实施例提供的图像处理装置的技术效果可以参考上述实施例中关于图像处理方法的相应描述,在此不再赘述。
本公开至少一个实施例还提供一种非瞬时性存储介质。图15为本公开一个实施例提供的一种非瞬时性存储介质的示意图。例如,如图15所示,该非瞬时性存储介质200非暂时性地存储计算机可读指令201,当非暂时性计算机可读指令201由计算机(包括处理器)执行时可以执行本公开任一实施例提供的图像处理方法的指令。
例如,在非瞬时性存储介质200上可以存储一个或多个计算机指令。非瞬时性存储介质200上存储的一些计算机指令可以是例如用于实现上述图像处理方法中的一个或多个步骤的指令。
例如,非瞬时性存储介质可以包括平板电脑的存储部件、个人计算机的硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、光盘只读存储器(CD-ROM)、闪存、或者上述存储介质的任意组合,也可以为其他适用的存储介质。
本公开的实施例提供的非瞬时性存储介质的技术效果可以参考上述实施例中关于图像处理方法的相应描述,在此不再赘述。
对于本公开,有以下几点需要说明:
(1)本公开实施例附图中,只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计。
(2)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。

Claims (20)

1.一种图像处理方法,包括:
获取教学场景的输入图像;
对所述输入图像进行检测处理,以确定包括板书区域的矩形检测区域;
对所述矩形检测区域进行分析处理,以确定对应于所述板书区域的目标区域;
确定所述目标区域的四个顶点;以及
根据所述目标区域的四个顶点,对所述目标区域进行坐标变换,以得到校正后的板书区域图像;
其中,确定所述目标区域的四个顶点,包括:
使用轮廓检测算法对所述目标区域进行轮廓检测处理,以得到至少一个轮廓;
对所述至少一个轮廓进行筛选处理,以得到至少一个备选轮廓;
基于所述至少一个备选轮廓,确定备选角点集合;以及
基于所述备选角点集合,确定所述目标区域的四个顶点;
所述图像处理方法还包括:
获取所述教学场景的视频序列;
从所述视频序列中抽取多帧图像分别作为所述输入图像,以得到所述目标区域在所述多帧图像中的每帧图像上的四个顶点;
将所述目标区域在所述多帧图像中的每帧图像上的四个顶点作为预测顶点,基于所述预测顶点确定所述目标区域的四个最终预测顶点;以及
根据所述目标区域的四个最终预测顶点,对所述视频序列的每帧图像中的目标区域进行坐标变换,以得到与所述视频序列的每帧图像对应的校正后的板书区域图像;
其中,将所述目标区域在所述多帧图像中的每帧图像上的四个顶点作为所述预测顶点,基于所述预测顶点确定所述目标区域的四个最终预测顶点,包括:
根据所述目标区域的每个顶点对应的预测顶点的坐标,对所述每个顶点对应的预测顶点进行第二聚类操作,以得到所述每个顶点对应的至少一个预测子类,并将所述每个顶点对应的当前包括最多预测顶点的预测子类的中心坐标作为所述每个顶点的当前预测坐标;
根据所述目标区域的四个顶点的当前预测坐标,确定任意两个相邻的顶点的当前预测坐标的连线到水平线的第一夹角值;
根据所述任意两个相邻的顶点的当前预测坐标,在所述多帧图像中的某帧图像上确定一个预测矩形区域,其中,所述某帧图像经过滤波处理、显著性区域检测处理以及边缘检测处理和二值化处理,所述任意两个相邻的顶点的当前预测坐标的连线为所述预测矩形区域的对角线,所述预测矩形区域的每条边平行或垂直于所述水平线;
在所述预测矩形区域中寻找直线,以确定一条曲线段,其中,所述曲线段包括多条线段,并基于所述多条线段确定所述曲线段的平均切线的斜率,基于所述平均切线的斜率确定所述平均切线到所述水平线的第二夹角值;以及
根据所述第一夹角值和所述第二夹角值,确定所述任意两个相邻的顶点的最终预测坐标。
2.根据权利要求1所述的图像处理方法,其中,基于所述至少一个备选轮廓,确定所述备选角点集合,包括:
计算所述至少一个备选轮廓的每个角点对应的顶角的角度值;以及
根据所述至少一个备选轮廓的每个角点对应的顶角的角度值,对所述至少一个备选轮廓的每个角点进行筛选,以得到多个第一备选角点,
其中,所述备选角点集合包括所述多个第一备选角点。
3.根据权利要求1所述的图像处理方法,其中,基于所述至少一个备选轮廓,确定所述备选角点集合,包括:
根据角点数量阈值对所述至少一个备选轮廓进行筛选,得到至少一个预选轮廓;
按照拟合精度对每个所述预选轮廓进行折线化拟合,将每个所述预选轮廓中的距离大于所述拟合精度的角点舍弃,距离小于所述拟合精度的角点保留,以得到闭合的拟合图形;以及
计算所述拟合图形的面积和角点数量,将面积小于面积阈值且角点数量小于4的所述拟合图形对应的预选轮廓舍弃,否则,提高所述拟合精度的数值并进行下一次折线化拟合,直至找到面积不小于所述面积阈值且角点数量等于4的拟合图形为止,将最终确定的拟合图像的四个顶点作为第二备选角点,
其中,所述备选角点集合包括多个所述第二备选角点。
4.根据权利要求1所述的图像处理方法,其中,基于所述至少一个备选轮廓,确定所述备选角点集合,包括:
计算所述至少一个备选轮廓的每个角点对应的顶角的角度值;
根据所述至少一个备选轮廓的每个角点对应的顶角的角度值,对所述至少一个备选轮廓的每个角点进行筛选,以得到多个第一备选角点;
根据角点数量阈值对所述至少一个备选轮廓进行筛选,得到至少一个预选轮廓;
按照拟合精度对每个所述预选轮廓进行折线化拟合,将每个所述预选轮廓中的距离大于所述拟合精度的角点舍弃,距离小于所述拟合精度的角点保留,以得到闭合的拟合图形;以及
计算所述拟合图形的面积和角点数量,将面积小于面积阈值且角点数量小于4的所述拟合图形对应的预选轮廓舍弃,否则,提高所述拟合精度的数值并进行下一次折线化拟合,直至找到面积不小于所述面积阈值且角点数量等于4的拟合图形为止,将最终确定的拟合图像的四个顶点作为第二备选角点,
其中,所述备选角点集合包括所述多个第一备选角点和多个所述第二备选角点。
5.根据权利要求1-4任一项所述的图像处理方法,其中,基于所述备选角点集合,确定所述目标区域的四个顶点,包括:
对所述备选角点集合中的角点进行第一聚类操作,以得到四个聚类中心,并将所述四个聚类中心作为所述目标区域的四个顶点。
6.根据权利要求5所述的图像处理方法,其中,对所述备选角点集合中的角点进行所述第一聚类操作,包括:
采用K均值聚类算法进行所述第一聚类操作,其中,K=4。
7.根据权利要求1-4任一项所述的图像处理方法,其中,对所述矩形检测区域进行所述分析处理,以确定对应于所述板书区域的所述目标区域,包括:
对所述矩形检测区域进行滤波处理,以得到对应于所述矩形检测区域的滤波图像,并根据滤波图像得到第一灰度图像;
对所述第一灰度图像进行显著性区域检测处理,以得到第二灰度图像;
对所述第二灰度图像进行边缘检测处理和二值化处理,以得到二值图像;以及
对所述二值图像进行连通区域分析处理,以确定对应于所述板书区域的所述目标区域。
8.根据权利要求7所述的图像处理方法,其中,对所述矩形检测区域进行所述滤波处理,以得到对应于所述矩形检测区域的所述滤波图像,包括:
采用中值滤波法对所述矩形检测区域进行所述滤波处理,以得到对应于所述矩形检测区域的所述滤波图像。
9.根据权利要求7所述的图像处理方法,其中,对所述第一灰度图像进行所述显著性区域检测处理,以得到所述第二灰度图像,包括:
计算所述第一灰度图像上的每个像素在所述第一灰度图像上的全局对比度,作为所述每个像素的显著值;以及
基于所述第一灰度图像上的所有像素的显著值,得到第二灰度图像,其中,所述第二灰度图像上的任一像素的灰度值为所述第一灰度图像上对应于所述任一像素的某一像素的显著值。
10.根据权利要求7所述的图像处理方法,其中,对所述第二灰度图像进行所述边缘检测处理和所述二值化处理,以得到所述二值图像,包括:
计算所述第二灰度图像上的所有像素的灰度梯度,以确定初选边缘像素;
对所述初选边缘像素进行非极大值抑制操作,以确定次选边缘像素;
对所述次选边缘像素进行双阈值筛选操作,以得到终选边缘像素;以及
根据所述终选边缘像素,对所述第二灰度图像进行所述二值化处理,以得到所述二值图像。
11.根据权利要求7所述的图像处理方法,其中,对所述二值图像进行连通区域分析处理,以确定对应于所述板书区域的所述目标区域,包括:
确定所述二值图像上的所有连通区域以及每个所述连通区域的外接矩形框;
选择所述外接矩形框的面积从大到小排序为第2到第N的连通区域作为待选区域,其中,N为大于等于2的整数;以及
根据所述板书区域的第二先验知识,对所述待选区域进行验证,以确定对应于所述板书区域的所述目标区域。
12.根据权利要求11所述的图像处理方法,其中,所述第二先验知识包括:
所述板书区域的中心坐标与所述二值图像的中心坐标之间的距离小于距离阈值;以及
所述板书区域的长宽比位于第二范围内。
13.根据权利要求1-4任一项所述的图像处理方法,其中,对所述输入图像进行所述检测处理,以确定包括所述板书区域的所述矩形检测区域,包括:
根据所述板书区域的第一先验知识,对所述矩形检测区域进行验证。
14.根据权利要求13所述的图像处理方法,其中,所述第一先验知识包括:
所述板书区域的中心坐标位于所述输入图像的上半部分;以及
所述板书区域的长宽比位于第一范围内。
15.根据权利要求1-4任一项所述的图像处理方法,其中,根据所述目标区域的四个顶点,对所述目标区域进行所述坐标变换,以得到所述校正后的板书区域图像,包括:
根据约束条件进行所述坐标变换,其中,所述约束条件包括:
所述校正后的板书区域图像为矩形,所述目标区域的四个顶点经过所述坐标变换后对应于所述矩形的四个顶点。
16.根据权利要求1-4任一项所述的图像处理方法,其中,根据所述第一夹角值和所述第二夹角值,确定所述任意两个相邻的顶点的最终预测坐标,包括:
响应于所述第一夹角值和所述第二夹角值的差值不大于第一阈值,将所述任意两个相邻的顶点的当前预测坐标作为所述任意两个相邻的顶点的最终预测坐标。
17.根据权利要求16所述的图像处理方法,其中,根据所述第一夹角值和所述第二夹角值,确定所述任意两个相邻的顶点的最终预测坐标,还包括:
响应于所述第一夹角值和所述第二夹角值的差值大于所述第一阈值,判断所述任意两个相邻的顶点的当前预测坐标与所述曲线段的最小距离是否不大于第二阈值;
响应于所述任意两个相邻的顶点之一的当前预测坐标与所述曲线段的最小距离不大于所述第二阈值且所述任意两个相邻的顶点之另一的当前预测坐标与所述曲线段的最小距离大于所述第二阈值,根据所述平均切线的斜率确定经过所述任意两个相邻的顶点之一的当前预测坐标的第一直线,同时根据与所述任意两个相邻的顶点之一相对的顶点的当前预测坐标以及所述任意两个相邻的顶点之另一的当前预测坐标确定第二直线,将所述任意两个相邻的顶点之一的当前预测坐标作为所述任意两个相邻的顶点之一的最终预测坐标,将所述第一直线和所述第二直线的交点的坐标作为所述任意两个相邻的顶点之另一的最终预测坐标;以及,
响应于所述任意两个相邻的顶点的当前预测坐标与所述曲线段的最小距离均大于所述第二阈值,舍弃所述任意两个相邻的顶点中的每个顶点对应的当前包括最多预测顶点的预测子类,将所述任意两个相邻的顶点中的每个顶点对应的剩余的包括最多预测顶点的预测子类的中心坐标作为所述任意两个相邻的顶点中的每个顶点的当前预测坐标,直到确定所述任意两个相邻的顶点中的每个顶点的最终预测坐标为止。
18.根据权利要求17所述的图像处理方法,其中,根据所述第一夹角值和所述第二夹角值,确定所述任意两个相邻的顶点的最终预测坐标,还包括:
响应于所述任意两个相邻的顶点对应的全部预测子类均被舍弃,根据所述任意两个相邻的顶点对应的所述曲线段的平均切线的斜率确定所述任意两个相邻的顶点对应的曲线段的平均切线,根据与所述任意两个相邻的顶点之一相对的顶点的当前预测坐标以及所述任意两个相邻的顶点之另一的当前预测坐标确定第三直线,根据与所述任意两个相邻的顶点之另一相对的顶点的当前预测坐标以及所述任意两个相邻的顶点之一的当前预测坐标确定第四直线,将所述平均切线和所述第三直线的交点的坐标作为所述任意两个相邻的顶点之一的最终预测坐标,将所述平均切线和所述第三直线的交点的坐标作为所述任意两个相邻的顶点之另一的最终预测坐标。
19.一种图像处理装置,包括:
存储器,用于非暂时性存储计算机可读指令;以及
处理器,用于运行所述计算机可读指令,其中,所述计算机可读指令被所述处理器运行时执行根据权利要求1-18任一项所述的图像处理方法。
20.一种非瞬时性存储介质,非暂时性地存储计算机可读指令,其中,当所述计算机可读指令由计算机执行时,执行根据权利要求1-18任一项所述的图像处理方法。
CN202110015478.1A 2021-01-07 2021-01-07 图像处理方法、图像处理装置以及非瞬时性存储介质 Active CN112348815B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202110015478.1A CN112348815B (zh) 2021-01-07 2021-01-07 图像处理方法、图像处理装置以及非瞬时性存储介质
CA3204361A CA3204361A1 (en) 2021-01-07 2021-12-03 Image processing method, image processing apparatus, and non-transitory storage medium
US18/271,278 US20240078646A1 (en) 2021-01-07 2021-12-03 Image processing method, image processing apparatus, and non-transitory storage medium
PCT/CN2021/135356 WO2022148192A1 (zh) 2021-01-07 2021-12-03 图像处理方法、图像处理装置以及非瞬时性存储介质
JP2023541634A JP2024500555A (ja) 2021-01-07 2021-12-03 画像処理方法、画像処理装置及び非一時的な記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110015478.1A CN112348815B (zh) 2021-01-07 2021-01-07 图像处理方法、图像处理装置以及非瞬时性存储介质

Publications (2)

Publication Number Publication Date
CN112348815A CN112348815A (zh) 2021-02-09
CN112348815B true CN112348815B (zh) 2021-04-06

Family

ID=74427338

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110015478.1A Active CN112348815B (zh) 2021-01-07 2021-01-07 图像处理方法、图像处理装置以及非瞬时性存储介质

Country Status (5)

Country Link
US (1) US20240078646A1 (zh)
JP (1) JP2024500555A (zh)
CN (1) CN112348815B (zh)
CA (1) CA3204361A1 (zh)
WO (1) WO2022148192A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112348815B (zh) * 2021-01-07 2021-04-06 新东方教育科技集团有限公司 图像处理方法、图像处理装置以及非瞬时性存储介质
CN113077478A (zh) * 2021-03-23 2021-07-06 苏州华兴源创科技股份有限公司 显示面板的对位方法、补偿方法、系统及可读存储介质
CN113379835A (zh) * 2021-06-29 2021-09-10 深圳中科飞测科技股份有限公司 检测设备的校准方法、装置、设备及可读存储介质
CN113538393A (zh) * 2021-07-26 2021-10-22 中冶京诚工程技术有限公司 棒线材原料坯弯曲检测方法、装置、设备及可读存储介质
CN114056920B (zh) * 2021-09-30 2023-05-05 江西省通讯终端产业技术研究院有限公司 一种基于机器视觉的叠片机及其片料校准方法和控制方法
CN114372993B (zh) * 2021-12-20 2022-10-28 广州市玄武无线科技股份有限公司 一种基于图像矫正的斜拍货架分层检测方法及系统
CN115830049A (zh) * 2022-07-18 2023-03-21 宁德时代新能源科技股份有限公司 角点检测的方法和装置
CN115032202B (zh) * 2022-08-10 2022-11-08 山东唐乐生物科技股份有限公司 一种甜菊糖苷产品的残留杂质去除方法
CN115457559B (zh) * 2022-08-19 2024-01-16 上海通办信息服务有限公司 一种将文本及证照类图片智能摆正的方法、装置和设备
CN115511807B (zh) * 2022-09-16 2023-07-28 北京远舢智能科技有限公司 一种凹槽位置和深度的确定方法及装置
CN115330802B (zh) * 2022-10-17 2024-01-19 山东大学 一种碳纤维复合材料气瓶x射线图像脱粘缺陷提取方法
CN115482308B (zh) * 2022-11-04 2023-04-28 平安银行股份有限公司 图像处理方法、计算机设备及存储介质
CN116071357B (zh) * 2023-03-07 2023-06-16 飞杨电源技术(深圳)有限公司 一种大功率充电器表面缺陷检测方法
CN116052008B (zh) * 2023-04-03 2023-06-02 华南理工大学 一种建筑废弃物分拣与处理系统
CN116152252B (zh) * 2023-04-20 2023-09-08 长鑫存储技术有限公司 电镜图像处理方法、设备及计算机可读存储介质
CN116245950B (zh) * 2023-05-11 2023-08-01 合肥高维数据技术有限公司 用于全屏或单角缺失的屏幕角点定位方法
CN116309577B (zh) * 2023-05-19 2023-08-04 山东晨光胶带有限公司 一种高强传送带物料智能检测方法及系统
CN116342614B (zh) * 2023-06-01 2023-08-08 山东九思新材料科技有限责任公司 基于图像识别的废硅片形状检测方法
CN116452667B (zh) * 2023-06-16 2023-08-22 成都实时技术股份有限公司 一种基于图像处理的目标识别与定位方法
CN116452595B (zh) * 2023-06-19 2023-08-18 烟台金丝猴食品科技有限公司 一种基于图像处理的控制方法及设备
CN116503397B (zh) * 2023-06-26 2023-09-01 山东天通汽车科技股份有限公司 基于图像数据的车内传输带缺陷检测方法
CN116563282B (zh) * 2023-07-10 2023-10-27 东莞市博思特数控机械有限公司 一种基于机器视觉的钻削刀具检测方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6631180B2 (ja) * 2015-11-12 2020-01-15 株式会社リコー 画像処理装置、画像形成装置、画像処理方法及びプログラム
JP6757913B2 (ja) * 2016-02-26 2020-09-23 国立研究開発法人情報通信研究機構 画像クラスタリングシステム、画像クラスタリング方法、画像クラスタリングプログラム、および、コミュニティ構造検出システム
CN106203433A (zh) * 2016-07-13 2016-12-07 西安电子科技大学 一种车辆监控图像中车牌位置自动提取并透视校正的方法
CN108564557B (zh) * 2018-05-31 2020-08-25 京东方科技集团股份有限公司 图像校正方法及装置
CN109409366B (zh) * 2018-10-30 2022-04-05 四川长虹电器股份有限公司 基于角点检测的畸变图像校正方法及装置
CN111681284A (zh) * 2020-06-09 2020-09-18 商汤集团有限公司 一种角点检测方法、装置、电子设备及存储介质
CN112348815B (zh) * 2021-01-07 2021-04-06 新东方教育科技集团有限公司 图像处理方法、图像处理装置以及非瞬时性存储介质

Also Published As

Publication number Publication date
CA3204361A1 (en) 2022-07-14
CN112348815A (zh) 2021-02-09
JP2024500555A (ja) 2024-01-09
WO2022148192A1 (zh) 2022-07-14
US20240078646A1 (en) 2024-03-07

Similar Documents

Publication Publication Date Title
CN112348815B (zh) 图像处理方法、图像处理装置以及非瞬时性存储介质
US10346720B2 (en) Rotation variant object detection in Deep Learning
CN105279787B (zh) 基于拍照的户型图识别生成三维房型的方法
RU2680765C1 (ru) Автоматизированное определение и обрезка неоднозначного контура документа на изображении
CN110427932B (zh) 一种识别图像中多个票据区域的方法及装置
CN111435438A (zh) 适于增强现实、虚拟现实和机器人的图形基准标记识别
CN110866871A (zh) 文本图像矫正方法、装置、计算机设备及存储介质
CN106447721B (zh) 图像阴影检测方法和装置
US6774889B1 (en) System and method for transforming an ordinary computer monitor screen into a touch screen
CN111951290B (zh) 一种图像中物体的边缘检测方法及装置
US10846844B1 (en) Collaborative disparity decomposition
CN107103320B (zh) 嵌入式医疗数据图像识别及集成方法
CN110781885A (zh) 基于图像处理的文本检测方法、装置、介质及电子设备
CN107798725B (zh) 基于Android的二维住房户型识别和三维呈现方法
CN109919971B (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
CN109343920B (zh) 一种图像处理方法及其装置、设备和存储介质
JP2017516204A (ja) 美的要素を備える機械読み取り可能な光学式コードの生成および復号化
US20180253852A1 (en) Method and device for locating image edge in natural background
CN111401266B (zh) 绘本角点定位的方法、设备、计算机设备和可读存储介质
CN111626295B (zh) 车牌检测模型的训练方法和装置
CN111415300A (zh) 一种用于全景图像的拼接方法和系统
CN114037992A (zh) 仪表示数识别方法、装置、电子设备及存储介质
US9959672B2 (en) Color-based dynamic sub-division to generate 3D mesh
CN113436222A (zh) 图像处理方法、图像处理装置、电子设备及存储介质
CN113688846B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40040744

Country of ref document: HK