SlideShare a Scribd company logo
6
Most read
8
Most read
12
Most read
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
ORB 特征
高洪臣
cggos@outlook.com
2020 年 7 月 10 日
高洪臣 ORB 特征 2020 年 7 月 10 日 1 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Image Features
feature types
feature extraction(detection) & matching
• feature detector
• feature descriptor
高洪臣 ORB 特征 2020 年 7 月 10 日 2 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Corner / Keypoint / Interest Point
• keypoint detector
• Harris (1988)
• Shi-Tomas (1994)
• FAST1
(Features from Accelerated and Segments Test) (2006)
• AGAST (2010)
• keypoint descriptor
• BRIEF2
(Binary robust independent elementary feature) (2010)
• keypoint detector & descriptor
• SIFT (1999, 2004)
• SURF (2006)
• BRISK (Binary Robust Invariant Scalable Keypoints) (2011)
• ORB3
(2011)
• FREAK (2012)
• KAZE (2012)
1Edward Rosten and Tom Drummond. “Machine Learning for High-Speed Corner Detection.”. In: ECCV (1).
Ed. by Ales Leonardis, Horst Bischof, and Axel Pinz. Vol. 3951. Lecture Notes in Computer Science. Springer,
2006, pp. 430–443. isbn: 3-540-33832-2. url: http://dblp.uni-trier.de/db/conf/eccv/eccv2006-1.html#RostenD06.
2Michael Calonder et al. “BRIEF: Binary Robust Independent Elementary Features”. In:
Proceedings of the 11th European Conference on Computer Vision: Part IV. ECCV’10. Heraklion, Crete,
Greece: Springer-Verlag, 2010, pp. 778–792. isbn: 364215560X.
3Ethan Rublee et al. “ORB: An efficient alternative to SIFT or SURF”. In:
2011 International conference on computer vision. Ieee. 2011, pp. 2564–2571.
高洪臣 ORB 特征 2020 年 7 月 10 日 3 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
ORB Overview
ORB = Oriented FAST + Rotated BRIEF
• oFAST (ORB Detector)
• keypoint position - FAST
• keypoint orientation - image patch moment
• keypoint response/score - NMS(Non-Maximal Supression)
• scale-invariant - image pyramid
• rBRIEF (ORB Descriptor)
• keypoint descriptor - BRIEF
• rotation-invariant - keypoint orientation
高洪臣 ORB 特征 2020 年 7 月 10 日 4 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Multiscale Image Pyramid
Parameters
• level: 8
• scale: 1.2
• downsample:
bilinear interpolation
produce FAST features and compute descriptors at each level in the pyramid
高洪臣 ORB 特征 2020 年 7 月 10 日 5 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
FAST
fast-9
•  9 contiguous pixels in a circle (of 16 pixels) brighter than Ip + t or darker than Ip − t
• Rapid rejection by testing 1, 9, 5 then 13
NMS (Non-Maximal Suppression) 1
remove corners which have an adjacent corner with higher score
Uniform Distribution
DistributeOctTree() 2
1all called non-maximum suppression
2use Quad-Tree to iteratively segment image regions in ORB-SLAM2
高洪臣 ORB 特征 2020 年 7 月 10 日 6 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Orientation by Intensity Centroid (IC)
the moments of a patch:
mpq =
∑
x,y
xp
yq
I(x, y)
the first order moment of a patch 1
I (radius = 15):
m10 =
15∑
x=−15
15∑
y=−15
xI(x, y) =
15∑
y=0
15∑
x=−15
x [I(x, y) − I(x, −y)]
m01 =
15∑
x=−15
15∑
y=−15
yI(x, y) =
15∑
y=1
15∑
x=−15
y [I(x, y) − I(x, −y)]
the intensity centroid:
C =
(
m10
m00
,
m01
m00
)
the orientation (from the corner’s center to the centroid):
θ = atan 2 (m01, m10)
1a circular patch
高洪臣 ORB 特征 2020 年 7 月 10 日 7 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Image Gaussian Filtering/Blurring/Smoothing 1
why filtering
start by smoothing image using a Gaussian kernel at each level in the pyramid in order to
prevent the descriptor from being sensitive to high-frequency noise
Gaussian Kernel
G(u, v) =
1
2πσ2
e
− u2+v2
2σ2
Gn(u, v) =
1
s
· e
− u2+v2
2σ2 , s =
w∑
u=−w
w∑
v=−w
e
− u2+v2
2σ2
(a) (u,v) (b) kernel (σ=1.5) (c) normalized
Image Gaussian Filtering: I′(i, j) =
∑w
u=−w
∑w
v=−w
I(i + u, j + v)Gn(u, v)
1low-pass filter
高洪臣 ORB 特征 2020 年 7 月 10 日 8 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Separability of the Gaussian filter
s =
w∑
u=−w
w∑
v=−w
g(u) · g(v) =
( w∑
u=−w
g(u)
)
·
( w∑
v=−w
g(v)
)
= s′
· s′
Gn(u, v) =
1
s
· e− u2
2σ2
· e− v2
2σ2
=
1
s
· g(u) · g(v) =
g(u)
s′
·
g(v)
s′
Separable Kernel Matrix:
G(2w+1)×(2w+1) =
1
s








g(−w)g(−w) . . . g(−w)g(0) . . . g(−w)g(w)
...
...
...
g(0)g(−w) . . . g(0)g(0) . . . g(0)g(w)
...
...
...
g(w)g(−w) . . . g(w)g(0) . . . g(w)g(w)








=
1
s′








g(−w)
...
g(0)
...
g(w)








·
1
s′
[
g(−w) . . . g(0) . . . g(w)
]
高洪臣 ORB 特征 2020 年 7 月 10 日 9 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Separability of the Gaussian filter
Image Gaussian Filtering:
I′
(i, j) =
w∑
u=−w
w∑
v=−w
I(i + u, j + v)Gn(u, v)
=
w∑
u=−w
w∑
v=−w
I(i + u, j + v)
1
s
g(u)g(v)
=
w∑
u=−w
w∑
v=−w
I(i + u, j + v)
1
s′
g(u)
1
s′
g(v)
=
w∑
u=−w
[ w∑
v=−w
I(i + u, j + v)
g(v)
s′
]
g(u)
s′
=
w∑
u=−w
S(i + u)
g(u)
s′
• kernel size: (2w + 1) × (2w + 1), w = 3
1 int gaussKernel[4] = { 224, 192, 136, 72 };
高洪臣 ORB 特征 2020 年 7 月 10 日 10 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
BRIEF
• vector dim: 256 bits (32 bytes)
• each vector ←→ each keypoint
for each bit, select a pair of points in a patch I which centered a corner p and compare
their intensity
S =
( p1, . . . , pn
q1, . . . , qn
)
∈ R(2×2)×256
τ(I; pi, qi) :=
{
1 : I(pi)  I(qi)
0 : I(pi) ≥ I(qi)
the descriptor (each bit ←→ each pair of points (pi, qi)):
f(n) =
n
∑
i=1
2i−1
τ(I; pi, qi), (n = 256)
高洪臣 ORB 特征 2020 年 7 月 10 日 11 / 12
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
rBRIEF
• construct a lookup table of precomputed BRIEF patterns
1 static int ORB_pattern[256*4] = {
2 8, -3, 9, 5,
3 4, 2, 7,-12,
4 -11, 9, -8, 2,
5 7,-12, 12,-13, // ...
6 }
• steered BRIEF, for each bit of the descriptor
p′
i = p + Rθ(pi − p)
q′
i = p + Rθ(qi − p)
, Rθ =
[
cos θ − sin θ
sin θ cos θ
]
τ(I; p′
i, q′
i) :=
{
1 : I(p′
i)  I(q′
i)
0 : I(p′
i) ≥ I(q′
i)
1 float angle = (float)kpt.angle*factorPI;
2 float a = (float)cos(angle), b = (float)sin(angle);
3 #define GET_VALUE(idx) 
4 center[cvRound(pattern[idx].x*b + pattern[idx].y*a)*step + 
5 cvRound(pattern[idx].x*a - pattern[idx].y*b)]
高洪臣 ORB 特征 2020 年 7 月 10 日 12 / 12

More Related Content

PPTX
Orb feature by nitin
PPTX
IMAGE SEGMENTATION.
PDF
Computer Vision
PDF
30th コンピュータビジョン勉強会@関東 DynamicFusion
PPTX
Intensity Transformation and Spatial filtering
PPT
Spatial domain and filtering
PPTX
3D transformation in computer graphics
Orb feature by nitin
IMAGE SEGMENTATION.
Computer Vision
30th コンピュータビジョン勉強会@関東 DynamicFusion
Intensity Transformation and Spatial filtering
Spatial domain and filtering
3D transformation in computer graphics

What's hot (20)

PPTX
計算スケジューリングの効果~もし,Halideがなかったら?~
PDF
Discrete cosine transform
PDF
画像局所特徴量と特定物体認識 - SIFTと最近のアプローチ -
PDF
object detection with lidar-camera fusion: survey (updated)
PDF
Prediction and planning for self driving at waymo
PDF
PR-132: SSD: Single Shot MultiBox Detector
PPTX
Application of edge detection
PDF
【DL輪読会】Vision-Centric BEV Perception: A Survey
PPTX
Introduction to OpenCV
PPTX
Background subtraction
PDF
つくばチャレンジ2020運営の活動報告
PDF
Object Detection Using R-CNN Deep Learning Framework
PDF
ROS の活用による屋外の歩行者空間に適応した自律移動ロボットの開発
PDF
20181130 lidar object detection survey
PPTX
動画像を用いた経路予測手法の分類
PDF
Feature detection and matching
PPT
Hidden surfaces
PDF
[MIRU2018] Global Average Poolingの特性を用いたAttention Branch Network
PPTX
Introduction to PyTorch
PDF
Trend of 3D object detections
計算スケジューリングの効果~もし,Halideがなかったら?~
Discrete cosine transform
画像局所特徴量と特定物体認識 - SIFTと最近のアプローチ -
object detection with lidar-camera fusion: survey (updated)
Prediction and planning for self driving at waymo
PR-132: SSD: Single Shot MultiBox Detector
Application of edge detection
【DL輪読会】Vision-Centric BEV Perception: A Survey
Introduction to OpenCV
Background subtraction
つくばチャレンジ2020運営の活動報告
Object Detection Using R-CNN Deep Learning Framework
ROS の活用による屋外の歩行者空間に適応した自律移動ロボットの開発
20181130 lidar object detection survey
動画像を用いた経路予測手法の分類
Feature detection and matching
Hidden surfaces
[MIRU2018] Global Average Poolingの特性を用いたAttention Branch Network
Introduction to PyTorch
Trend of 3D object detections
Ad

Similar to Image ORB feature (20)

PDF
Implementation of high performance feature extraction method using oriented f...
PDF
Modern features-part-2-descriptors
PPTX
Image feature extraction
PDF
Practical Digital Image Processing 4
PDF
ramya_Motion_Detection
PPT
9553477.ppt
DOCX
Scale Invariant Feature Tranform
PDF
Lecture 02 internet video search
PPTX
06 image features
PDF
SURF - Speeded Up Robust Features
PPTX
Introduction_____to______ OpenCV___.pptx
PDF
Templateless Marked Element Recognition Using Computer Vision
PPTX
Object detection - RCNNs vs Retinanet
PPTX
feature matching and model description .pptx
PDF
Fast Feature Pyramids for Object Detection
PDF
International Journal of Computational Engineering Research(IJCER)
PDF
International Journal of Computational Engineering Research(IJCER)
PPTX
Unit - 3aaaaaaaaaaaaaaaaaaaaaaaaaaa.pptx
PDF
The information and mutual information ration for counting image features and...
PDF
Lec07 corner blob
Implementation of high performance feature extraction method using oriented f...
Modern features-part-2-descriptors
Image feature extraction
Practical Digital Image Processing 4
ramya_Motion_Detection
9553477.ppt
Scale Invariant Feature Tranform
Lecture 02 internet video search
06 image features
SURF - Speeded Up Robust Features
Introduction_____to______ OpenCV___.pptx
Templateless Marked Element Recognition Using Computer Vision
Object detection - RCNNs vs Retinanet
feature matching and model description .pptx
Fast Feature Pyramids for Object Detection
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
Unit - 3aaaaaaaaaaaaaaaaaaaaaaaaaaa.pptx
The information and mutual information ration for counting image features and...
Lec07 corner blob
Ad

Recently uploaded (20)

PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
WOOl fibre morphology and structure.pdf for textiles
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
Web App vs Mobile App What Should You Build First.pdf
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
August Patch Tuesday
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PPTX
Modernising the Digital Integration Hub
PDF
Hybrid model detection and classification of lung cancer
PPTX
Tartificialntelligence_presentation.pptx
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPTX
observCloud-Native Containerability and monitoring.pptx
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PDF
project resource management chapter-09.pdf
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Univ-Connecticut-ChatGPT-Presentaion.pdf
cloud_computing_Infrastucture_as_cloud_p
WOOl fibre morphology and structure.pdf for textiles
Module 1.ppt Iot fundamentals and Architecture
Web App vs Mobile App What Should You Build First.pdf
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Developing a website for English-speaking practice to English as a foreign la...
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
DP Operators-handbook-extract for the Mautical Institute
August Patch Tuesday
Group 1 Presentation -Planning and Decision Making .pptx
Modernising the Digital Integration Hub
Hybrid model detection and classification of lung cancer
Tartificialntelligence_presentation.pptx
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
observCloud-Native Containerability and monitoring.pptx
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
project resource management chapter-09.pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...

Image ORB feature

  • 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Image Features feature types feature extraction(detection) & matching • feature detector • feature descriptor 高洪臣 ORB 特征 2020 年 7 月 10 日 2 / 12
  • 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Corner / Keypoint / Interest Point • keypoint detector • Harris (1988) • Shi-Tomas (1994) • FAST1 (Features from Accelerated and Segments Test) (2006) • AGAST (2010) • keypoint descriptor • BRIEF2 (Binary robust independent elementary feature) (2010) • keypoint detector & descriptor • SIFT (1999, 2004) • SURF (2006) • BRISK (Binary Robust Invariant Scalable Keypoints) (2011) • ORB3 (2011) • FREAK (2012) • KAZE (2012) 1Edward Rosten and Tom Drummond. “Machine Learning for High-Speed Corner Detection.”. In: ECCV (1). Ed. by Ales Leonardis, Horst Bischof, and Axel Pinz. Vol. 3951. Lecture Notes in Computer Science. Springer, 2006, pp. 430–443. isbn: 3-540-33832-2. url: http://dblp.uni-trier.de/db/conf/eccv/eccv2006-1.html#RostenD06. 2Michael Calonder et al. “BRIEF: Binary Robust Independent Elementary Features”. In: Proceedings of the 11th European Conference on Computer Vision: Part IV. ECCV’10. Heraklion, Crete, Greece: Springer-Verlag, 2010, pp. 778–792. isbn: 364215560X. 3Ethan Rublee et al. “ORB: An efficient alternative to SIFT or SURF”. In: 2011 International conference on computer vision. Ieee. 2011, pp. 2564–2571. 高洪臣 ORB 特征 2020 年 7 月 10 日 3 / 12
  • 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ORB Overview ORB = Oriented FAST + Rotated BRIEF • oFAST (ORB Detector) • keypoint position - FAST • keypoint orientation - image patch moment • keypoint response/score - NMS(Non-Maximal Supression) • scale-invariant - image pyramid • rBRIEF (ORB Descriptor) • keypoint descriptor - BRIEF • rotation-invariant - keypoint orientation 高洪臣 ORB 特征 2020 年 7 月 10 日 4 / 12
  • 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Multiscale Image Pyramid Parameters • level: 8 • scale: 1.2 • downsample: bilinear interpolation produce FAST features and compute descriptors at each level in the pyramid 高洪臣 ORB 特征 2020 年 7 月 10 日 5 / 12
  • 6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FAST fast-9 • 9 contiguous pixels in a circle (of 16 pixels) brighter than Ip + t or darker than Ip − t • Rapid rejection by testing 1, 9, 5 then 13 NMS (Non-Maximal Suppression) 1 remove corners which have an adjacent corner with higher score Uniform Distribution DistributeOctTree() 2 1all called non-maximum suppression 2use Quad-Tree to iteratively segment image regions in ORB-SLAM2 高洪臣 ORB 特征 2020 年 7 月 10 日 6 / 12
  • 7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Orientation by Intensity Centroid (IC) the moments of a patch: mpq = ∑ x,y xp yq I(x, y) the first order moment of a patch 1 I (radius = 15): m10 = 15∑ x=−15 15∑ y=−15 xI(x, y) = 15∑ y=0 15∑ x=−15 x [I(x, y) − I(x, −y)] m01 = 15∑ x=−15 15∑ y=−15 yI(x, y) = 15∑ y=1 15∑ x=−15 y [I(x, y) − I(x, −y)] the intensity centroid: C = ( m10 m00 , m01 m00 ) the orientation (from the corner’s center to the centroid): θ = atan 2 (m01, m10) 1a circular patch 高洪臣 ORB 特征 2020 年 7 月 10 日 7 / 12
  • 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Image Gaussian Filtering/Blurring/Smoothing 1 why filtering start by smoothing image using a Gaussian kernel at each level in the pyramid in order to prevent the descriptor from being sensitive to high-frequency noise Gaussian Kernel G(u, v) = 1 2πσ2 e − u2+v2 2σ2 Gn(u, v) = 1 s · e − u2+v2 2σ2 , s = w∑ u=−w w∑ v=−w e − u2+v2 2σ2 (a) (u,v) (b) kernel (σ=1.5) (c) normalized Image Gaussian Filtering: I′(i, j) = ∑w u=−w ∑w v=−w I(i + u, j + v)Gn(u, v) 1low-pass filter 高洪臣 ORB 特征 2020 年 7 月 10 日 8 / 12
  • 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Separability of the Gaussian filter s = w∑ u=−w w∑ v=−w g(u) · g(v) = ( w∑ u=−w g(u) ) · ( w∑ v=−w g(v) ) = s′ · s′ Gn(u, v) = 1 s · e− u2 2σ2 · e− v2 2σ2 = 1 s · g(u) · g(v) = g(u) s′ · g(v) s′ Separable Kernel Matrix: G(2w+1)×(2w+1) = 1 s         g(−w)g(−w) . . . g(−w)g(0) . . . g(−w)g(w) ... ... ... g(0)g(−w) . . . g(0)g(0) . . . g(0)g(w) ... ... ... g(w)g(−w) . . . g(w)g(0) . . . g(w)g(w)         = 1 s′         g(−w) ... g(0) ... g(w)         · 1 s′ [ g(−w) . . . g(0) . . . g(w) ] 高洪臣 ORB 特征 2020 年 7 月 10 日 9 / 12
  • 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Separability of the Gaussian filter Image Gaussian Filtering: I′ (i, j) = w∑ u=−w w∑ v=−w I(i + u, j + v)Gn(u, v) = w∑ u=−w w∑ v=−w I(i + u, j + v) 1 s g(u)g(v) = w∑ u=−w w∑ v=−w I(i + u, j + v) 1 s′ g(u) 1 s′ g(v) = w∑ u=−w [ w∑ v=−w I(i + u, j + v) g(v) s′ ] g(u) s′ = w∑ u=−w S(i + u) g(u) s′ • kernel size: (2w + 1) × (2w + 1), w = 3 1 int gaussKernel[4] = { 224, 192, 136, 72 }; 高洪臣 ORB 特征 2020 年 7 月 10 日 10 / 12
  • 11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BRIEF • vector dim: 256 bits (32 bytes) • each vector ←→ each keypoint for each bit, select a pair of points in a patch I which centered a corner p and compare their intensity S = ( p1, . . . , pn q1, . . . , qn ) ∈ R(2×2)×256 τ(I; pi, qi) := { 1 : I(pi) I(qi) 0 : I(pi) ≥ I(qi) the descriptor (each bit ←→ each pair of points (pi, qi)): f(n) = n ∑ i=1 2i−1 τ(I; pi, qi), (n = 256) 高洪臣 ORB 特征 2020 年 7 月 10 日 11 / 12
  • 12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . rBRIEF • construct a lookup table of precomputed BRIEF patterns 1 static int ORB_pattern[256*4] = { 2 8, -3, 9, 5, 3 4, 2, 7,-12, 4 -11, 9, -8, 2, 5 7,-12, 12,-13, // ... 6 } • steered BRIEF, for each bit of the descriptor p′ i = p + Rθ(pi − p) q′ i = p + Rθ(qi − p) , Rθ = [ cos θ − sin θ sin θ cos θ ] τ(I; p′ i, q′ i) := { 1 : I(p′ i) I(q′ i) 0 : I(p′ i) ≥ I(q′ i) 1 float angle = (float)kpt.angle*factorPI; 2 float a = (float)cos(angle), b = (float)sin(angle); 3 #define GET_VALUE(idx) 4 center[cvRound(pattern[idx].x*b + pattern[idx].y*a)*step + 5 cvRound(pattern[idx].x*a - pattern[idx].y*b)] 高洪臣 ORB 特征 2020 年 7 月 10 日 12 / 12