CN109446909B - 一种单目测距辅助泊车系统及方法 - Google Patents
一种单目测距辅助泊车系统及方法 Download PDFInfo
- Publication number
- CN109446909B CN109446909B CN201811135575.9A CN201811135575A CN109446909B CN 109446909 B CN109446909 B CN 109446909B CN 201811135575 A CN201811135575 A CN 201811135575A CN 109446909 B CN109446909 B CN 109446909B
- Authority
- CN
- China
- Prior art keywords
- image
- automobile
- fisheye
- interest
- region
- 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 33
- 238000005259 measurement Methods 0.000 title abstract description 12
- 238000013507 mapping Methods 0.000 claims abstract description 52
- 239000004744 fabric Substances 0.000 claims abstract description 16
- 238000012937 correction Methods 0.000 claims description 46
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 claims description 36
- 240000004050 Pentaglottis sempervirens Species 0.000 claims description 34
- 230000009466 transformation Effects 0.000 claims description 25
- 238000001514 detection method Methods 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 19
- 238000003708 edge detection Methods 0.000 claims description 6
- 238000009499 grossing Methods 0.000 claims description 5
- 238000013139 quantization Methods 0.000 claims description 4
- 241000251468 Actinopterygii Species 0.000 claims 1
- 230000004888 barrier function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000005036 potential barrier Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000002902 bimodal effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/586—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of parking space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- 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/20—Image preprocessing
-
- 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/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- 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/40—Extraction of image or video features
- G06V10/44—Local 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
- G06T2207/30264—Parking
-
- 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/20—Image preprocessing
- G06V10/24—Aligning, centring, orientation detection or correction of the image
- G06V10/247—Aligning, centring, orientation detection or correction of the image by affine transforms, e.g. correction due to perspective effects; Quadrilaterals, e.g. trapezoids
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
本发明公开了一种单目测距辅助泊车系统及方法,在汽车后方车身上安装鱼眼摄像头,在汽车后方地面上放置棋盘格标定布,获取汽车后方的鱼眼标定图像;对鱼眼标定图像进行标定,确定感兴趣区域,建立坐标映射表和距离值信息映射表;获取标定参数值,在感兴趣区域内检测停车位或障碍物的特征点;计算特征点距离汽车后方的距离。本发明能够确保给驾驶员提供的距离信息的准确性,可以应用在全景泊车影像系统中。
Description
技术领域
本发明属于汽车安全辅助驾驶领域,具体涉及一种单目测距辅助泊车系统及方法。
背景技术
在辅助泊车技术方面,目前主要的技术手段是倒车雷达和倒车影像。倒车雷达是由装置在车尾保险杠上的探头发送超声波撞击障碍物后反射此声波,计算出车体与障碍物间的实际距离。但是倒车雷达存在测量的盲区,同时由于雷达探头发射的声波信号较窄,因此在探测较细的障碍物时存在误判等情况。另外,在倒车速度较快时,倒车雷达的反应速度不足以满足倒车的要求。倒车影像是采用广角摄像装置安装在车后,通过车内的显示屏,可见车后的障碍物。最近几年出现的全景倒车影像系统,利用车辆四周安装的视频传感器和图像处理设备能够提供车身周围360度的图像,可提供鸟瞰效果的视频图像,辅助驾驶员进行倒车以及泊车入位。但是目前市面上倒车影像都不具有距离信息提示,因此,在倒车时需要驾驶员实时地盯着显示屏,这对多数驾驶员来说不是很适应。
全自动泊车技术在国外的豪华车型上已经得到应用。全自动泊车系统主要是利用了8-12个探测距离达到5米的超声波雷达,用到的远距离超声波雷达目前只有博世、村田等少数公司可以制造,价格比较贵。自动泊车由于约束条件多、停车效率低,目前用户接受度不高、普及率很低,还不适应中国的市场。
利用单个鱼眼摄像头,采用测距辅助泊车技术,实现类似双目测距的功能,可以解决泊车过程中倒车雷达与倒车影像及其组合应用中存在的测量盲区、用户体验差、成本高等问题。在基于视觉技术的辅助泊车系统中,鱼眼摄像头被广泛应用于全景泊车系统中,鱼眼摄像头可以给用户提供竟可能大的视野,另外如果在倒车时,能够给驾驶员提供准确的车位距离信息或者是障碍物距离信息,那么将能够给驾驶员提供更好的用户体验。但是鱼眼摄像头由于严重的镜头畸变,在应用于单目测距时,往往误差较大。
综上所述,目前对于如何扩大驾驶员的视野,如何能够给驾驶员提供准确的车位距离信息或者是障碍物距离信息的问题,尚缺乏有效的解决方案。
发明内容
为了克服上述现有技术的不足,本发明提供了一种单目测距辅助泊车系统及方法,能够确保给驾驶员提供的距离信息的准确性,可以应用在全景泊车影像系统中。
本发明所采用的技术方案是:
本发明的第一目的是提供一种单目测距辅助泊车方法,该方法包括以下步骤:
在汽车后方车身上安装鱼眼摄像头,在汽车后方地面上放置棋盘格标定布,获取汽车后方的鱼眼标定图像;
对鱼眼标定图像进行标定,确定感兴趣区域,建立坐标映射表和距离值信息映射表;
获取标定参数值,在感兴趣区域内检测停车位或障碍物的特征点;
计算特征点距离汽车后方的距离。
作为本发明的进一步限定,所述对鱼眼图像进行标定的步骤包括:
获取汽车后方的鱼眼标定图像I0,根据摄像头标定参数将鱼眼标定图像I0进行畸变矫正,得到透视图像I1,在透视图像中标记包含棋盘格所在的矩形区域作为特征点检测的感兴趣区域R0;
在透视图像I1内检测棋盘格的内角点,根据内角点的图像坐标和世界坐标将透视图像I1进行鸟瞰变换,得到鸟瞰图像I2,并标记包含棋盘格所在的矩形区域作为特征点检测的感兴趣区域R1;
计算鸟瞰图像的感兴趣区域R1子图像中每个像素点距离汽车后方的距离值,建立鸟瞰图像中的每个像素点坐标与距离汽车后方的距离值之间的距离值信息映射表;
根据图像的重映射变换,确定鸟瞰图像中的每个像素点坐标与透视图像中的像素点坐标值之间的坐标映射表,从而得到透视图像中的每个像素点与距离汽车后方的距离值之间的距离值信息映射表。
作为本发明的进一步限定,所述在感兴趣区域内检测停车位或障碍物的特征点的步骤包括:
获取待处理的汽车后方鱼眼图像S0;
根据摄像头参数将鱼眼图像S0进行畸变矫正,得到畸变矫正后的图像S1;
将畸变矫正后的图像S1进行鸟瞰变换,得到鸟瞰变换后的图像S2,根据预先获取的参数值确定鸟瞰图像S2的感兴趣区域子图像S3;
对鸟瞰图像感兴趣区域子图像S3进行高斯平滑处理,利用sobel算子进行边缘检测,计算每个象素点的梯度幅值和梯度角,分析梯度角量化统计直方图,判断鸟瞰图像感兴趣区域子图像S3中是否存在停车位;
如果鸟瞰图像感兴趣区域内存在停车位,则获取停车位的入口特征点;
如果鸟瞰图像感兴趣区域内不存在停车位,则获取障碍物特征点。
作为本发明的进一步限定,所述停车位的入口特征点获取方法为:
根据像素的梯度幅值和梯度角量化结果将梯度图像进行二值化处理;
在处理后的梯度图像中,自适应地根据高、低阈值和4方向梯度角值进行跟踪,确定车位线角度初始值;
利用Hough变换定位车位线,确定停车位入口位置的两个像素点P0、P1,将这两个像素点作为要检测的特征点,根据距离值信息映射表,确定特征点P0、P1到汽车后方的实际距离值D0、D1,同时根据重映射变换确定特征点P0、P1在鱼眼图像中对应的象素点P0'、P1'。
作为本发明的进一步限定,所述障碍物特征点获取方法为:
对畸变矫正后的图像S1进行处理,确定畸变矫正后的图像S1的的感兴趣区域子图像S4,在畸变矫正后图像的感兴趣区域子图像S4中进行障碍物检测;
距离汽车后方最近的障碍物像素点为待检测的特征点P2;根据距离值信息映射表,确定特征点P2到汽车后方的实际距离值D2,同时根据重映射变换确定特征点P2在鱼眼图像中对应的象素点P2'。
作为本发明的进一步限定,显示汽车后方鱼眼图像,并标注特征点和特征点距离汽车后方的距离,若停车位或障碍物的特征点距离汽车后方的距离小于设定的阈值,则发出报警信息。
本发明的第二目的是提供一种单目测距辅助泊车系统,该系统包括:
图像采集模块,安装在汽车后方车身上,用于实时获取汽车后方的鱼眼标定图像和待处理鱼眼图像,并上传至处理器;
处理器,用于接收和存储图像采集模块发送的图像,并对鱼眼标定图像进行标定,确定感兴趣区域,建立坐标映射表和距离值信息映射表;对待处理鱼眼图像进行检测,获取感兴趣区域内停车位或障碍物的特征点,并计算特征点距离汽车后方的距离;
显示模块,用于显示汽车后方鱼眼图像,并标注特征点和特征点距离汽车后方的距离,若停车位或障碍物的特征点距离汽车后方的距离小于设定的阈值,则发出报警信息。
作为本发明的进一步限定,所述处理器包括标定模块和特征点检测模块。
作为本发明的进一步限定,所述标定模块被配置为:
根据摄像头标定参数将鱼眼标定图像进行畸变矫正,得到透视图像I1,在透视图像中标记包含棋盘格所在的矩形区域作为特征点检测的感兴趣区域R0;
在透视图像I1内检测棋盘格的内角点,根据内角点的图像坐标和世界坐标将透视图像I1进行鸟瞰变换,得到鸟瞰图像I2,并标记包含棋盘格所在的矩形区域作为特征点检测的感兴趣区域R1;
计算鸟瞰图像的感兴趣区域R1子图像中每个像素点距离汽车后方的距离值,建立鸟瞰图像中的每个像素点坐标与距离汽车后方的距离值之间的距离值信息映射表;
根据图像的重映射变换,确定鸟瞰图像中的每个像素点坐标与透视图像中的像素点坐标值之间的坐标映射表,从而得到透视图像中的每个像素点与距离汽车后方的距离值之间的距离值信息映射表。
作为本发明的进一步限定,所述特征点检测模块被配置为:
根据摄像头参数将待处理的鱼眼图像S0的进行畸变矫正,得到畸变矫正后的图像S1;
将畸变矫正后的图像S1进行鸟瞰变换,得到鸟瞰变换后的图像S2,根据预先获取的参数值确定鸟瞰图像S2的感兴趣区域子图像S3;
对鸟瞰图像感兴趣区域子图像S3进行高斯平滑处理,利用sobel算子进行边缘检测,计算每个象素点的梯度幅值和梯度角,分析梯度角量化统计直方图,如果该曲线服从双峰分布,则说明边界的方向存在两个方向的分布,鸟瞰图像感兴趣区域内中存在停车位,获取停车位的入口特征点;否则鸟瞰图像感兴趣区域中不存在停车位,则获取障碍物特征点。
与现有技术相比,本发明的有益效果是:
(1)本发明利用棋盘格标定布,对系统进行标定,确定畸变矫正图像处理的感兴趣区域和鸟瞰图像处理的感兴趣区域,同时确定区域对应的子图像和区域对应的子图像中的每个像素点坐标与距离汽车后方的距离值之间的距离值信息映射表,便于后续计算车位距离信息或者是障碍物距离信息,能够确保给驾驶员提供的距离信息的准确性;
(2)本发明能够实时获取鱼眼图像,对鱼眼图像进行畸变矫正、鸟瞰变换,根据系统标定参数值,确定鸟瞰图像感兴趣区域,在鸟瞰图像感兴趣区域子图像内检测是否存在停车位,如果能够检测到停车位,根据鸟瞰图像感兴趣区域子图像确定特征点,如果不能检测到停车位,那么确定畸变矫正后图像感兴趣区域对应的子图像,在畸变矫正后图像感兴趣区域子图像内分析确定障碍物的特征点,利用预先获取到的距离信息映射表,确定特征点距离汽车后方的距离,同时确定特征点在鱼眼图像中对应的象素点;当汽车处于有停车位的停车场环境泊车时,此时能够检测到停车位,确定停车位的入口点到汽车后方的距离;当汽车处于无停车位环境下泊车时,此时检测不到停车位,能够直接计算潜在障碍物距离汽车后方的距离,能够给驾驶员提供准确的车位距离信息或者是障碍物距离信息,可以应用在全景泊车影像系统中。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
图1是单目测距辅助泊车方法的流程图;
图2是汽车和标定布的位置示意图;
图3是单目测距辅助泊车系统结构图。
具体实施方式
下面结合附图与实施例对本发明作进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
正如背景技术所介绍的,自动泊车由于约束条件多、停车效率低,目前用户接受度不高、普及率很低,还不适应中国的市场;鱼眼摄像头由于严重的镜头畸变,在应用于单目测距时,往往误差较大。
为了解决如上的技术问题,本发明提出了一种单目测距辅助泊车系统及方法,扩大驾驶员的视野,能够给驾驶员提供准确的车位距离信息或者是障碍物距离信息,可以应用在全景泊车影像系统中。
图1是本发明实施例一单目测距辅助泊车方法的流程图。如图1所示,该方法包括以下步骤:
S101,获取汽车后方的鱼眼图像。
在汽车后方安装鱼眼摄像头,实时获取汽车后方的鱼眼图像。
S102,系统标定。
利用棋盘格标定布,对鱼眼标定图像进行标定。根据系统标定参数值,确定畸变矫正图像处理的感兴趣区域R0和鸟瞰图像处理的感兴趣区域R1,同时确定R0区域对应的子图像和R1区域对应的子图像中的每个像素点坐标与距离汽车后方的距离值之间的距离信息映射表,并分别将包含该距离值信息的距离信息映射表写入系统内存,系统标定只需要进行一次。
所述系统标定采用如下步骤实现:
S1021,在汽车后方车身上固定一个180度的鱼眼摄像头,保证在汽车行驶过程中摄像头角度和位置固定。
S1022,在汽车后方地面上放置棋盘格标定布,标定布放置的位置与汽车倒车时目标特征点的检测区域一致。
S1023,获取汽车后方的鱼眼标定图像,将鱼眼标定图像进行畸变矫正,在畸变矫正后的图像中确定图像处理的感兴趣区域R0。
S1024,将畸变矫正后图像进行鸟瞰变换,确定鸟瞰图像处理的感兴趣区域R1,计算鸟瞰图像处理的感兴趣区域R1子图像中每个像素点距离汽车后方的距离值,建立鸟瞰图像中的每个像素点坐标与距离汽车后方的距离值之间的距离值信息映射表。
S1025,根据图像的重映射变换,确定鸟瞰图像中的每个像素点坐标与鱼眼图像中的像素点坐标之间坐标映射表、畸变矫正后图像中的每个像素点坐标与鱼眼图像中的像素点坐标之间坐标映射表。
S1026,确定畸变矫正图像处理的感兴趣区域R0子图像中每个像素点距离汽车后方的距离值;以及畸变矫正后图像中的每个像素点坐标距离汽车后方的距离值之间的距离值信息映射表。
S103,获取标定参数值,在感兴趣区域内检测停车位或者障碍物的特征点。
汽车泊车时存在两种情况:一种是有停车位的停车场环境,另一种是无停车位环境。当汽车处于有停车位的停车场环境泊车时,此时能够检测到停车位,确定停车位的入口点到汽车后方的距离。当汽车处于无停车位环境下泊车时,此时检测不到停车位,系统直接计算潜在障碍物距离汽车后方的距离。
获取实时的鱼眼图像,对鱼眼图像进行畸变矫正和鸟瞰变换,根据系统标定参数值,确定鸟瞰图像感兴趣区域,在鸟瞰图像感兴趣区域子图像S1内,检测是否存在停车位,如果能够检测到停车位,根据子图像S1确定停车位的特征点;如果不能检测到停车位,那么确定畸变矫正图像感兴趣区域对应的子图像S0,在畸变矫正图像感兴趣区域子图像S0内分析确定障碍物的特征点。
所述在感兴趣区域内检测停车位或者障碍物的特征点采用如下步骤实现:
S1031:图像采集模块获取一帧实时鱼眼图像。
S1032:根据预先获取的摄像头参数将鱼眼图像进行畸变矫正,然后将畸变矫正后的图像进行鸟瞰变换。
S1033:确定鸟瞰图像的感兴趣区域,在鸟瞰图像感兴趣区域子图像内进行边缘检测,根据边缘的梯度角方向直方图,确定图像中是否存在停车位。
S1034:如果鸟瞰图像感兴趣区域内中存在停车位,定位停车位,确定停车位矩形区域的角点,最后确定停车位的两个入口特征点,根据预先获取的坐标映射表和距离值信息映射表,分别确定该停车位的两个特征点在鱼眼图像中重映射的像素点和特征点到汽车后方的距离值。
S1035:如果鸟瞰图像感兴趣区域中不存在停车位,对畸变矫正后的图像进行处理,确定图像处理的感兴趣区域,在畸变矫正后图像的感兴趣区域子图像中进行障碍物检测,确定障碍物特征点。
S104,计算障碍物特征点在鱼眼图像中对应的像素点,并计算特征点距汽车后方的距离。
利用预先获取的坐标映射表和距离信息映射表,确定该特征点在鱼眼图像中对应的象素点和特征点到汽车后方的距离值。
S105,实时显示,当停车位或障碍物目标点的距离小于一个设定值时,系统发出报警信息。
将包含特征点距汽车后方的距离信息的图像实时地在显示屏上显示,当停车位或障碍物目标点的距离足够小时,如小于50cm时,将给出预警信息。
本发明实施例一提出的单目测距辅助泊车方法,能够扩大用户的视野,能够给驾驶员提供准确的车位距离信息或者是障碍物距离信息;本发明易于实现,能够确保给驾驶员提供的距离信息的准确性,同时本发明可以应用在全景泊车影像系统中;本发明成本低,能够给用户更好体验,具有广阔的市场前景。
为了使本领域技术人员更好地了解本发明,下面列举一个更详细的实施例,本发明实施例二提出一种单目测距辅助泊车方法。图2是汽车和标定布的位置示意图。在汽车后方车身上固定安装鱼眼摄像头,安装角度为倾斜向下,根据汽车的尺寸,设定一个汽车停放矩形区域A,将汽车停在矩形区域A内,保证汽车后方到矩形区域A的一条边a3a2距离不大于10厘米,在车后方地面上放置棋盘格标定布,保证矩形区域A的边a3a2与棋盘格标定布上棋盘格所在矩形区域B的边b0b1平行。棋盘格标定布的布局和尺寸与标定汽车将要检测的范围相关,矩形区域B距离矩形区域A的距离记为d0,单个棋盘方格的尺寸记为w0。矩形区域A的竖直中心线与矩形区域B的竖直中心线重合。以图像的左上点为坐标原点,水平向右作为x轴正方向、垂直向下作为y轴正方向建立图像坐标系。
本发明实施例二单目测距辅助泊车方法包括以下步骤:
S201,利用鱼眼摄像头获取汽车后方的图像。
在按照要求将汽车停入规定区域、在地面上铺设好棋盘格标定布后,将USB图像采集盒连接PC机,在PC机上获取汽车后方的鱼眼标定图像I0。
S202,系统标定。
利用PC机选用鱼眼相机标定工具箱对系统中要使用的鱼眼摄像头进行标定,可以选用opencv或者matlab标定工具箱对鱼眼相机进行标定,本实施例中选用matlab标定工具箱。
所述系统标定步骤为:
S2021,PC机获取汽车后方的鱼眼标定图像I0,确定系统标定参数d0、w0。
S2022,根据预先获取的摄像头标定参数将鱼眼标定图像I0进行畸变矫正,得到普通的透视图像I1,在透视图像I1中标记特征点检测的感兴趣区域R0,感兴趣区域R0包含棋盘格所在的矩形区域B。
S2023:在透视图像I1内检测棋盘格的内角点,根据内角点的图像坐标和世界坐标将透视图像I1进行鸟瞰变换,得到鸟瞰图像I2,标记包含棋盘格所在的矩形区域作为特征点检测的感兴趣区域R1,鸟瞰变换后保证棋盘格所在的矩形区域在水平方向和垂直方向和图像坐标系的x轴和y轴平行,棋盘格矩形区域左上顶点图像坐标为P1(x1,y1),单个棋盘方格的图像尺寸为w1。
S2025:根据图像的重映射变换,计算出鸟瞰图像中每个像素点坐标值与透视图像中的像素点坐标值之间的坐标映射关系表,从而得到透视图像中的每个像素点与距离汽车后方的距离值之间的距离值信息映射表。
S203:获取特征点,并计算特征点距离汽车后方的距离。
所述特征点获取方法具体步骤如下:
S2031:获取要处理的实时鱼眼图像S0,根据预先获取的摄像头参数,对图像S0进行畸变矫正,得到畸变矫正后的图像S1。
S2032:将畸变矫正后的图像S1进行鸟瞰变换,得到鸟瞰变换后的图像S2,根据预先获取的参数值确定鸟瞰图像S2的感兴趣区域子图像S3。
S2033:对子图像S3进行高斯平滑处理,然后利用sobel算子进行边缘检测,计算每个象素点的梯度幅值和梯度角,分析梯度角量化统计直方图,如果该曲线服从双峰分布,说明边界的方向存在两个方向的分布,存在停车位,否则如果不存在停车位转步骤S2035。
S2034:对局部像素的非最大梯度值抑制。根据像素的梯度幅值和梯度角量化结果将梯度图像二值化,在处理后的梯度图像中自适应地根据高、低阈值和4方向梯度角值进行跟踪,确定车位线角度初始值。最后利用Hough变换定位车位线,确定停车位入口位置的两个像素点,这两个像素点就是要检测的特征点P0、P1,根据预先标定的距离值信息映射表可以确定特征点P0、P1到汽车后方的实际距离值D0、D1,同时根据重映射变换确定特征点P0、P1在鱼眼图像中对应的象素点P0'、P1',转步骤S2036。
S2035:根据预先标定的感兴趣区域R0,确定畸变矫正后的图像S1的感兴趣区域子图像S4,在子图像S4中进行障碍物检测。
障碍物检测是辅助驾驶、机器人导航等领域的核心问题之一。基于单目视觉的障碍物检测方法较多,本发明的障碍物检测方法是采用论文《一种新的基于单目视觉的广义障碍物检测方法》中提出的障碍物检测方法。
距离汽车后方最近的障碍物像素点就是待检测的特征点P2。根据预先标定的距离值信息映射表可以确定特征点P2到汽车后方的实际距离值D2,同时根据重映射变换确定特征点P2在鱼眼图像中对应的象素点P2'。
S2036:在显示屏上实时显示汽车后方鱼眼图像S0,标注特征点P0'、P1'或P2',并将特征点到汽车后方的距离标值D0、D1或D2标注出来,如果距离小于阈值,发出警报信息。
本发明实施例二提出的单目测距辅助泊车方法,利用安装在汽车后方的单目鱼眼摄像头获取描述停车环境的视频序列,读取当前帧,检测停车位或者障碍物的特征点,根据预先标定好的距离值,确定特征点距摄像机(即汽车后方)的距离,当停车位或者障碍物的特征点距汽车后方的距离小于一个设定值时,系统发出报警信息。
图3是本发明实施例二单目测距辅助泊车系统的结构图。本发明实施例二单目测距辅助泊车系统用于实现实施例一或实施例二的方法。该系统在两种模式下工作,一种是标定模式,是首次安装好系统后,标定图像处理的感兴趣区域、确定像素点坐标值与距离值的映射表;另一种工作模式是特征点距离计算模式,是在标定完系统后,在图像的感兴趣区域内检测特征点,利用预先获取的像素点坐标值与距离值之间的信息映射表,确定特征点距离汽车后方的距离。
如图3所示,所述单目测距辅助泊车系统包括图像采集模块、处理器和显示模块。将图像采集模块固定安装在车后方车身上,并在车后方地面上放置棋盘格标定布,该图像采集模块、显示模块分别与处理器连接。
具体地,所述图像采集模块,用于实时获取汽车后方的鱼眼标定图像和待处理鱼眼图像,并上传至处理器。
本实施例中,所述图像采集模块选用180度单目鱼眼摄像头。所述鱼眼摄像头固定安装在汽车后方的车身上,在标定鱼眼摄像头后,在汽车行驶过程中摄像头角度和位置固定不变。
所述处理器,用于接收和存储图像采集模块发送的图像,并对鱼眼标定图像进行标定,确定感兴趣区域,建立坐标映射表和距离值信息映射表;对待处理鱼眼图像进行检测,获取感兴趣区域内停车位或障碍物的特征点,并计算特征点距离汽车后方的距离。
所述处理器采用PC机。所述处理器包括标定模块和特征点检测模块。
所述标定模块,用于根据标定布的放置位置信息,确定畸变矫正图像处理的感兴趣区域R0和鸟瞰图像处理的感兴趣区域R1;在进行车位和障碍物的检测时,只对感兴趣区域进行图像处理。
该标定模块具体被配置为:
根据摄像头标定参数将鱼眼标定图像I0进行畸变矫正,得到透视图像I1,在透视图像中标记包含棋盘格所在的矩形区域作为特征点检测的感兴趣区域R0;
在透视图像I1内检测棋盘格的内角点,根据内角点的图像坐标和世界坐标将透视图像I1进行鸟瞰变换,得到鸟瞰图像I2,并标记包含棋盘格所在的矩形区域作为特征点检测的感兴趣区域R1;
计算鸟瞰图像的感兴趣区域R1子图像中每个像素点距离汽车后方的距离值,建立鸟瞰图像中的每个像素点坐标与距离汽车后方的距离值之间的距离值信息映射表;
根据图像的重映射变换,确定鸟瞰图像中的每个像素点坐标与透视图像中的像素点坐标值之间的坐标映射表,从而得到透视图像中的每个像素点与距离汽车后方的距离值之间的距离值信息映射表。
所述特征点检测模块,用于对待处理的鱼眼图像进行畸变矫正、鸟瞰变换,根据系统标定参数值,确定鸟瞰图像感兴趣区域S1,在S1子图像内检测是否存在停车位,如果能够检测到停车位,根据S1子图像确定特征点,如果不能检测到停车位,那么确定畸变矫正图像感兴趣区域S0对应的子图像,在S0子图像内分析确定障碍物的特征点;利用预先获取到的距离值信息映射表,确定特征点距离汽车后方的距离,同时确定特征点在鱼眼图像中对应的象素点。
所述特征点检测模块具体被配置为:
获取待处理的汽车后方鱼眼图像S0;
根据摄像头参数将鱼眼图像S0进行畸变矫正,得到畸变矫正后的图像S1;
将畸变矫正后的图像S1进行鸟瞰变换,得到鸟瞰变换后的图像S2,根据预先获取的参数值确定鸟瞰图像S2的感兴趣区域子图像S3;
对鸟瞰图像感兴趣区域子图像S3进行高斯平滑处理,利用sobel算子进行边缘检测,计算每个象素点的梯度幅值和梯度角,分析梯度角量化统计直方图,判断鸟瞰图像感兴趣区域子图像S3中是否存在停车位;
如果鸟瞰图像感兴趣区域内中存在停车位,根据像素的梯度幅值和梯度角量化结果将梯度图像进行二值化处理;在处理后的梯度图像中,自适应地根据高、低阈值和4方向梯度角值进行跟踪,确定车位线角度初始值;利用Hough变换定位车位线,确定停车位入口位置的两个像素点P0、P1,这两个像素点为要检测的特征点,根据距离值信息映射表,确定特征点P0、P1到汽车后方的实际距离值D0、D1,同时根据重映射变换确定特征点P0、P1在鱼眼图像中对应的象素点P0'、P1'。
如果鸟瞰图像感兴趣区域中不存在停车位,则对畸变矫正后的图像S1进行处理,确定畸变矫正后的图像S1的感兴趣区域子图像S4,在畸变矫正后图像的感兴趣区域子图像S4中进行障碍物检测;距离汽车后方最近的障碍物像素点为待检测的特征点P2;根据距离值信息映射表,确定特征点P2到汽车后方的实际距离值D2,同时根据重映射变换确定特征点P2在鱼眼图像中对应的象素点P2'。
从以上的描述中,可以看出,本申请上述的实施例实现了如下技术效果:
(1)本发明利用棋盘格标定布,对系统进行标定,确定畸变矫正图像处理的感兴趣区域和鸟瞰图像处理的感兴趣区域,同时确定区域对应的子图像和区域对应的子图像中的每个像素点坐标与距离汽车后方的距离值之间的距离值信息映射表,便于后续计算车位距离信息或者是障碍物距离信息,能够确保给驾驶员提供的距离信息的准确性;
(2)本发明能够实时获取鱼眼图像,对鱼眼图像进行畸变矫正、鸟瞰变换,根据系统标定参数值,确定鸟瞰图像感兴趣区域,在鸟瞰图像感兴趣区域子图像内检测是否存在停车位,如果能够检测到停车位,根据鸟瞰图像感兴趣区域子图像确定特征点,如果不能检测到停车位,那么确定畸变矫正后图像感兴趣区域对应的子图像,在畸变矫正后图像感兴趣区域子图像内分析确定障碍物的特征点,利用预先获取到的距离信息映射表,确定特征点距离汽车后方的距离,同时确定特征点在鱼眼图像中对应的象素点;当汽车处于有停车位的停车场环境泊车时,此时能够检测到停车位,确定停车位的入口点到汽车后方的距离;当汽车处于无停车位环境下泊车时,此时检测不到停车位,能够直接计算潜在障碍物距离汽车后方的距离,能够给驾驶员提供准确的车位距离信息或者是障碍物距离信息,可以应用在全景泊车影像系统中。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (5)
1.一种单目测距辅助泊车方法,其特征是,包括以下步骤:
在汽车后方车身上安装鱼眼摄像头,在汽车后方地面上放置棋盘格标定布,获取汽车后方的鱼眼标定图像;
对鱼眼标定图像进行标定,确定感兴趣区域,建立坐标映射表和距离值信息映射表;
获取标定参数值,在感兴趣区域内检测停车位或障碍物的特征点;
计算特征点距离汽车后方的距离;
所述对鱼眼图像进行标定的步骤包括:
获取汽车后方的鱼眼标定图像I 0,根据摄像头标定参数将鱼眼标定图像I 0进行畸变矫正,得到透视图像I 1,在透视图像中标记包含棋盘格所在的矩形区域作为特征点检测的感兴趣区域R 0;
在透视图像I 1内检测棋盘格的内角点,根据内角点的图像坐标和世界坐标将透视图像I 1进行鸟瞰变换,得到鸟瞰图像I 2,并标记包含棋盘格所在的矩形区域作为特征点检测的感兴趣区域R 1;
计算鸟瞰图像的感兴趣区域R 1子图像中每个像素点距离汽车后方的距离值,建立鸟瞰图像中的每个像素点坐标与距离汽车后方的距离值之间的距离值信息映射表;
根据图像的重映射变换,确定鸟瞰图像中的每个像素点坐标与透视图像中的像素点坐标值之间的坐标映射表,从而得到透视图像中的每个像素点与距离汽车后方的距离值之间的距离值信息映射表;
所述障碍物特征点获取方法为:
对畸变矫正后的图像S 1进行处理,确定畸变矫正后的图像S1的感兴趣区域子图像S 4,在畸变矫正后图像的感兴趣区域子图像S 4中进行障碍物检测;
距离汽车后方最近的障碍物像素点为待检测的特征点P 2;根据距离值信息映射表,确定特征点P 2到汽车后方的实际距离值D 2,同时根据重映射变换确定特征点P 2在鱼眼图像中对应的像素点P 2'。
2.根据权利要求1所述的单目测距辅助泊车方法,其特征是,所述在感兴趣区域内检测停车位或障碍物的特征点的步骤包括:
获取待处理的汽车后方鱼眼图像S 0;
根据摄像头参数将鱼眼图像S 0进行畸变矫正,得到畸变矫正后的图像S 1;
将畸变矫正后的图像S 1进行鸟瞰变换,得到鸟瞰变换后的图像S 2,根据预先获取的参数值确定鸟瞰图像S 2的感兴趣区域子图像S 3;
对鸟瞰图像感兴趣区域子图像S 3进行高斯平滑处理,利用sobel算子进行边缘检测,计算每个像素点的梯度幅值和梯度角,分析梯度角量化统计直方图,判断鸟瞰图像感兴趣区域子图像S 3中是否存在停车位;
如果鸟瞰图像感兴趣区域内存在停车位,则获取停车位的入口特征点;
如果鸟瞰图像感兴趣区域内不存在停车位,则获取障碍物特征点。
3.根据权利要求2所述的单目测距辅助泊车方法,其特征是,所述停车位的入口特征点获取方法为:
根据像素的梯度幅值和梯度角量化结果将梯度图像进行二值化处理;
在处理后的梯度图像中,自适应地根据高、低阈值和4方向梯度角值进行跟踪,确定车位线角度初始值;
利用Hough变换定位车位线,确定停车位入口位置的两个像素点P 0、P 1,将这两个像素点作为要检测的特征点,根据距离值信息映射表,确定特征点P 0、P 1到汽车后方的实际距离值D 0、D 1,同时根据重映射变换确定特征点P 0、P 1在鱼眼图像中对应的像素点P 0 '、P 1 '。
4.根据权利要求1所述的单目测距辅助泊车方法,其特征是,还包括:显示汽车后方鱼眼图像,并标注特征点和特征点距离汽车后方的距离,若停车位或者障碍物的特征点距离汽车后方的距离小于设定的阈值,则发出报警信息。
5.一种实现权利要求1-4中任一项所述的单目测距辅助泊车方法的单目测距辅助泊车系统,其特征是,包括:
图像采集模块,安装在汽车后方车身上,用于实时获取汽车后方的鱼眼标定图像和待处理鱼眼图像,并上传至处理器;
处理器,用于接收和存储图像采集模块发送的图像,并对鱼眼标定图像进行标定,确定感兴趣区域,建立坐标映射表和距离值信息映射表;对待处理鱼眼图像进行检测,获取感兴趣区域内停车位或障碍物的特征点,并计算特征点距离汽车后方的距离;
显示模块,用于显示汽车后方鱼眼图像,并标注特征点和特征点距离汽车后方的距离,若停车位或者障碍物的特征点距离汽车后方的距离小于设定的阈值,则发出报警信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811135575.9A CN109446909B (zh) | 2018-09-27 | 2018-09-27 | 一种单目测距辅助泊车系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811135575.9A CN109446909B (zh) | 2018-09-27 | 2018-09-27 | 一种单目测距辅助泊车系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109446909A CN109446909A (zh) | 2019-03-08 |
CN109446909B true CN109446909B (zh) | 2020-12-29 |
Family
ID=65545924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811135575.9A Active CN109446909B (zh) | 2018-09-27 | 2018-09-27 | 一种单目测距辅助泊车系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109446909B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7296768B2 (ja) * | 2019-04-22 | 2023-06-23 | フォルシアクラリオン・エレクトロニクス株式会社 | 画像処理装置及び画像処理方法 |
CN110348297B (zh) * | 2019-05-31 | 2023-12-26 | 纵目科技(上海)股份有限公司 | 一种用于识别立体停车库的检测方法、系统、终端和存储介质 |
KR102297683B1 (ko) * | 2019-07-01 | 2021-09-07 | (주)베이다스 | 복수의 카메라들을 캘리브레이션하는 방법 및 장치 |
CN110475046B (zh) * | 2019-07-31 | 2022-05-17 | 浪潮金融信息技术有限公司 | 一种售卖机装机阶段定位检测区域的方法 |
CN110503683B (zh) * | 2019-08-29 | 2023-11-24 | 的卢技术有限公司 | 一种基于单目测距的狭窄车位倒车入库引导方法和系统 |
CN111080707B (zh) * | 2019-10-17 | 2023-06-16 | 深圳亿智时代科技有限公司 | 一种单目全景泊车标定方法 |
CN110889829B (zh) * | 2019-11-09 | 2023-11-03 | 东华大学 | 一种基于鱼眼镜头的单目测距方法 |
CN111168722A (zh) * | 2019-12-12 | 2020-05-19 | 中国科学院深圳先进技术研究院 | 一种基于单目摄像头测距的机器人跟随系统及方法 |
CN111160172B (zh) * | 2019-12-19 | 2024-04-16 | 武汉佑驾创新科技有限公司 | 泊车位检测方法、装置、计算机设备和存储介质 |
CN113492829B (zh) * | 2020-04-08 | 2022-08-26 | 华为技术有限公司 | 数据处理的方法和装置 |
CN113570657A (zh) * | 2020-04-28 | 2021-10-29 | 富华科精密工业(深圳)有限公司 | 基于鱼眼图像的自动导向小车定位方法及计算机装置 |
CN113673288B (zh) * | 2020-05-15 | 2024-01-23 | 深圳市航盛电子股份有限公司 | 空闲车位检测方法、装置、计算机设备及存储介质 |
CN111723801B (zh) * | 2020-06-26 | 2022-09-02 | 南京甄视智能科技有限公司 | 鱼眼相机图片中目标检测矫正的方法与系统 |
CN111973410A (zh) * | 2020-06-30 | 2020-11-24 | 北京迈格威科技有限公司 | 障碍物检测方法、装置、避障设备及计算机可读存储介质 |
CN112183413B (zh) * | 2020-09-30 | 2024-05-14 | 东风柳州汽车有限公司 | 一种车位检测方法、装置、存储介质及车辆 |
CN112270311B (zh) * | 2020-11-25 | 2023-12-19 | 武汉理工大学 | 一种基于车载环视逆投影的近目标快速检测方法及系统 |
CN113276768B (zh) * | 2021-04-21 | 2023-04-07 | 上海阅瞳科技有限公司 | 泊车辅助装置及方法 |
CN113655486B (zh) * | 2021-08-16 | 2023-08-25 | 安徽江淮汽车集团股份有限公司 | 基于单后视相机及多雷达的自动泊车方法 |
CN117315034B (zh) * | 2023-11-29 | 2024-03-29 | 苏州魔视智能科技有限公司 | 横坡车位坐标的确定方法、装置、计算机设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107792177A (zh) * | 2016-08-31 | 2018-03-13 | 爱信精机株式会社 | 停车支援装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104240225B (zh) * | 2013-06-19 | 2017-11-21 | 德尔福电子(苏州)有限公司 | 一种鸟瞰视图系统摄像头一步标定方法 |
US20160280136A1 (en) * | 2014-03-05 | 2016-09-29 | Guy M. Besson | Active-tracking vehicular-based systems and methods for generating adaptive image |
CN105763854B (zh) * | 2016-04-18 | 2019-01-08 | 扬州航盛科技有限公司 | 一种基于单目摄像头的全景成像系统及其成像方法 |
CN107424116B (zh) * | 2017-07-03 | 2020-06-19 | 浙江零跑科技有限公司 | 基于侧环视相机的泊车位检测方法 |
CN107856667B (zh) * | 2017-11-08 | 2020-02-14 | 科大讯飞股份有限公司 | 辅助泊车系统和方法 |
-
2018
- 2018-09-27 CN CN201811135575.9A patent/CN109446909B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107792177A (zh) * | 2016-08-31 | 2018-03-13 | 爱信精机株式会社 | 停车支援装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109446909A (zh) | 2019-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109446909B (zh) | 一种单目测距辅助泊车系统及方法 | |
CN107554430B (zh) | 车辆盲区可视化方法、装置、终端、系统及车辆 | |
CN102458964B (zh) | 用于车辆停泊中的摄像机系统 | |
JP4695167B2 (ja) | 車両の後方視認システムの歪みを補正し且つ像を強調する方法及び装置 | |
CN109657638B (zh) | 障碍物定位方法、装置和终端 | |
US9536306B2 (en) | Vehicle vision system | |
CN112419385B (zh) | 一种3d深度信息估计方法、装置及计算机设备 | |
US8244410B2 (en) | Intelligent driving assistant systems | |
CN109094669A (zh) | 用于评估铰接角度的方法和设备 | |
CN110909705B (zh) | 一种基于车载摄像头的路侧停车位感知方法及系统 | |
WO2019000945A1 (zh) | 车载摄像机测距方法及装置、存储介质和电子设备 | |
US20110169957A1 (en) | Vehicle Image Processing Method | |
EP2079053A1 (en) | Method and apparatus for calibrating a video display overlay | |
CN110126820A (zh) | 自动泊车系统、泊车方法及车辆 | |
CN102862531A (zh) | 一种轨迹连续变化的可视泊车辅助系统及其控制方法 | |
CN109963147B (zh) | 摄像头的安装角度检测方法、装置和车辆 | |
CN110555407A (zh) | 路面车辆空间识别方法及电子设备 | |
CN112233188A (zh) | 一种基于激光雷达的车顶全景相机及其标定方法 | |
CN108394416B (zh) | 一种车位显示辅助方法及系统 | |
CN113459951A (zh) | 车外环境显示方法和装置、车辆、设备和存储介质 | |
CN112215214A (zh) | 调整智能车载终端的摄像头偏移的方法及系统 | |
CN112907648A (zh) | 库位角点检测方法、装置、终端设备及车辆 | |
CN116486351A (zh) | 行车预警方法、装置、设备及存储介质 | |
CN109472742B (zh) | 自动调整融合区域的算法及其实现方法 | |
WO2022133986A1 (en) | Accuracy estimation method and system |
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 |