18005 lines
1.1 MiB
18005 lines
1.1 MiB
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<!-- NewPage -->
|
|
<html lang="en">
|
|
<head>
|
|
<!-- Generated by javadoc (1.8.0_292) on Sat Dec 25 08:13:29 UTC 2021 -->
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
<title>Calib3d (OpenCV 4.5.5 Java documentation)</title>
|
|
<meta name="date" content="2021-12-25">
|
|
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
|
<script type="text/javascript" src="../../../script.js"></script>
|
|
</head>
|
|
<body>
|
|
<script type="text/javascript"><!--
|
|
try {
|
|
if (location.href.indexOf('is-external=true') == -1) {
|
|
parent.document.title="Calib3d (OpenCV 4.5.5 Java documentation)";
|
|
}
|
|
}
|
|
catch(err) {
|
|
}
|
|
//-->
|
|
var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9,"i21":9,"i22":9,"i23":9,"i24":9,"i25":9,"i26":9,"i27":9,"i28":9,"i29":9,"i30":9,"i31":9,"i32":9,"i33":9,"i34":9,"i35":9,"i36":9,"i37":9,"i38":9,"i39":9,"i40":9,"i41":9,"i42":9,"i43":9,"i44":9,"i45":9,"i46":9,"i47":9,"i48":9,"i49":9,"i50":9,"i51":9,"i52":9,"i53":9,"i54":9,"i55":9,"i56":9,"i57":9,"i58":9,"i59":9,"i60":9,"i61":9,"i62":9,"i63":9,"i64":9,"i65":9,"i66":9,"i67":9,"i68":9,"i69":9,"i70":9,"i71":9,"i72":9,"i73":9,"i74":9,"i75":9,"i76":9,"i77":9,"i78":9,"i79":9,"i80":9,"i81":9,"i82":9,"i83":9,"i84":9,"i85":9,"i86":9,"i87":9,"i88":9,"i89":9,"i90":9,"i91":9,"i92":9,"i93":9,"i94":9,"i95":9,"i96":9,"i97":9,"i98":9,"i99":9,"i100":9,"i101":9,"i102":9,"i103":9,"i104":9,"i105":9,"i106":9,"i107":9,"i108":9,"i109":9,"i110":9,"i111":9,"i112":9,"i113":9,"i114":9,"i115":9,"i116":9,"i117":9,"i118":9,"i119":9,"i120":9,"i121":9,"i122":9,"i123":9,"i124":9,"i125":9,"i126":9,"i127":9,"i128":9,"i129":9,"i130":9,"i131":9,"i132":9,"i133":9,"i134":9,"i135":9,"i136":9,"i137":9,"i138":9,"i139":9,"i140":9,"i141":9,"i142":9,"i143":9,"i144":9,"i145":9,"i146":9,"i147":9,"i148":9,"i149":9,"i150":9,"i151":9,"i152":9,"i153":9,"i154":9,"i155":9,"i156":9,"i157":9,"i158":9,"i159":9,"i160":9,"i161":9,"i162":9,"i163":9,"i164":9,"i165":9,"i166":9,"i167":9,"i168":9,"i169":9,"i170":9,"i171":9,"i172":9,"i173":9,"i174":9,"i175":9,"i176":9,"i177":9,"i178":9,"i179":9,"i180":9,"i181":9,"i182":9,"i183":9,"i184":9,"i185":9,"i186":9,"i187":9,"i188":9,"i189":9,"i190":9,"i191":9,"i192":9,"i193":9,"i194":9,"i195":9,"i196":9,"i197":9,"i198":9,"i199":9,"i200":9,"i201":9,"i202":9,"i203":9,"i204":9,"i205":9,"i206":9,"i207":9,"i208":9,"i209":9,"i210":9,"i211":9,"i212":9,"i213":9,"i214":9,"i215":9,"i216":9,"i217":9,"i218":9,"i219":9,"i220":9,"i221":9,"i222":9,"i223":9,"i224":9,"i225":9,"i226":9,"i227":9,"i228":9,"i229":9};
|
|
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
|
|
var altColor = "altColor";
|
|
var rowColor = "rowColor";
|
|
var tableTab = "tableTab";
|
|
var activeTableTab = "activeTableTab";
|
|
</script>
|
|
<noscript>
|
|
<div>JavaScript is disabled on your browser.</div>
|
|
</noscript>
|
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
|
<div class="topNav"><a name="navbar.top">
|
|
<!-- -->
|
|
</a>
|
|
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
|
|
<a name="navbar.top.firstrow">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="navList" title="Navigation">
|
|
<li><a href="../../../overview-summary.html">Overview</a></li>
|
|
<li><a href="package-summary.html">Package</a></li>
|
|
<li class="navBarCell1Rev">Class</li>
|
|
<li><a href="package-tree.html">Tree</a></li>
|
|
<li><a href="../../../index-all.html">Index</a></li>
|
|
<li><a href="../../../help-doc.html">Help</a></li>
|
|
</ul>
|
|
<div class="aboutLanguage">
|
|
<script>
|
|
var url = window.location.href;
|
|
var pos = url.lastIndexOf('/javadoc/');
|
|
url = pos >= 0 ? (url.substring(0, pos) + '/javadoc/mymath.js') : (window.location.origin + '/mymath.js');
|
|
var script = document.createElement('script');
|
|
script.src = 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML,' + url;
|
|
document.getElementsByTagName('head')[0].appendChild(script);
|
|
</script>
|
|
</div>
|
|
</div>
|
|
<div class="subNav">
|
|
<ul class="navList">
|
|
<li>Prev Class</li>
|
|
<li><a href="../../../org/opencv/calib3d/StereoBM.html" title="class in org.opencv.calib3d"><span class="typeNameLink">Next Class</span></a></li>
|
|
</ul>
|
|
<ul class="navList">
|
|
<li><a href="../../../index.html?org/opencv/calib3d/Calib3d.html" target="_top">Frames</a></li>
|
|
<li><a href="Calib3d.html" target="_top">No Frames</a></li>
|
|
</ul>
|
|
<ul class="navList" id="allclasses_navbar_top">
|
|
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
|
|
</ul>
|
|
<div>
|
|
<script type="text/javascript"><!--
|
|
allClassesLink = document.getElementById("allclasses_navbar_top");
|
|
if(window==top) {
|
|
allClassesLink.style.display = "block";
|
|
}
|
|
else {
|
|
allClassesLink.style.display = "none";
|
|
}
|
|
//-->
|
|
</script>
|
|
</div>
|
|
<div>
|
|
<ul class="subNavList">
|
|
<li>Summary: </li>
|
|
<li>Nested | </li>
|
|
<li><a href="#field.summary">Field</a> | </li>
|
|
<li><a href="#constructor.summary">Constr</a> | </li>
|
|
<li><a href="#method.summary">Method</a></li>
|
|
</ul>
|
|
<ul class="subNavList">
|
|
<li>Detail: </li>
|
|
<li><a href="#field.detail">Field</a> | </li>
|
|
<li><a href="#constructor.detail">Constr</a> | </li>
|
|
<li><a href="#method.detail">Method</a></li>
|
|
</ul>
|
|
</div>
|
|
<a name="skip.navbar.top">
|
|
<!-- -->
|
|
</a></div>
|
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
|
<!-- ======== START OF CLASS DATA ======== -->
|
|
<div class="header">
|
|
<div class="subTitle">org.opencv.calib3d</div>
|
|
<h2 title="Class Calib3d" class="title">Class Calib3d</h2>
|
|
</div>
|
|
<div class="contentContainer">
|
|
<ul class="inheritance">
|
|
<li>java.lang.Object</li>
|
|
<li>
|
|
<ul class="inheritance">
|
|
<li>org.opencv.calib3d.Calib3d</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<div class="description">
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<hr>
|
|
<br>
|
|
<pre>public class <span class="typeNameLabel">Calib3d</span>
|
|
extends java.lang.Object</pre>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div class="summary">
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<!-- =========== FIELD SUMMARY =========== -->
|
|
<ul class="blockList">
|
|
<li class="blockList"><a name="field.summary">
|
|
<!-- -->
|
|
</a>
|
|
<h3>Field Summary</h3>
|
|
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
|
|
<caption><span>Fields</span><span class="tabEnd"> </span></caption>
|
|
<tr>
|
|
<th class="colFirst" scope="col">Modifier and Type</th>
|
|
<th class="colLast" scope="col">Field and Description</th>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_ACCURACY">CALIB_CB_ACCURACY</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_ADAPTIVE_THRESH">CALIB_CB_ADAPTIVE_THRESH</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_ASYMMETRIC_GRID">CALIB_CB_ASYMMETRIC_GRID</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_CLUSTERING">CALIB_CB_CLUSTERING</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_EXHAUSTIVE">CALIB_CB_EXHAUSTIVE</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_FAST_CHECK">CALIB_CB_FAST_CHECK</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_FILTER_QUADS">CALIB_CB_FILTER_QUADS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_LARGER">CALIB_CB_LARGER</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_MARKER">CALIB_CB_MARKER</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_NORMALIZE_IMAGE">CALIB_CB_NORMALIZE_IMAGE</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_CB_SYMMETRIC_GRID">CALIB_CB_SYMMETRIC_GRID</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_ASPECT_RATIO">CALIB_FIX_ASPECT_RATIO</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_FOCAL_LENGTH">CALIB_FIX_FOCAL_LENGTH</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_INTRINSIC">CALIB_FIX_INTRINSIC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_K1">CALIB_FIX_K1</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_K2">CALIB_FIX_K2</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_K3">CALIB_FIX_K3</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_K4">CALIB_FIX_K4</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_K5">CALIB_FIX_K5</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_K6">CALIB_FIX_K6</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_PRINCIPAL_POINT">CALIB_FIX_PRINCIPAL_POINT</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_S1_S2_S3_S4">CALIB_FIX_S1_S2_S3_S4</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_TANGENT_DIST">CALIB_FIX_TANGENT_DIST</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_FIX_TAUX_TAUY">CALIB_FIX_TAUX_TAUY</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_HAND_EYE_ANDREFF">CALIB_HAND_EYE_ANDREFF</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_HAND_EYE_DANIILIDIS">CALIB_HAND_EYE_DANIILIDIS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_HAND_EYE_HORAUD">CALIB_HAND_EYE_HORAUD</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_HAND_EYE_PARK">CALIB_HAND_EYE_PARK</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_HAND_EYE_TSAI">CALIB_HAND_EYE_TSAI</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_NINTRINSIC">CALIB_NINTRINSIC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_RATIONAL_MODEL">CALIB_RATIONAL_MODEL</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_ROBOT_WORLD_HAND_EYE_LI">CALIB_ROBOT_WORLD_HAND_EYE_LI</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_ROBOT_WORLD_HAND_EYE_SHAH">CALIB_ROBOT_WORLD_HAND_EYE_SHAH</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_SAME_FOCAL_LENGTH">CALIB_SAME_FOCAL_LENGTH</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_THIN_PRISM_MODEL">CALIB_THIN_PRISM_MODEL</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_TILTED_MODEL">CALIB_TILTED_MODEL</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_USE_EXTRINSIC_GUESS">CALIB_USE_EXTRINSIC_GUESS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_USE_INTRINSIC_GUESS">CALIB_USE_INTRINSIC_GUESS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_USE_LU">CALIB_USE_LU</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_USE_QR">CALIB_USE_QR</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_ZERO_DISPARITY">CALIB_ZERO_DISPARITY</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CALIB_ZERO_TANGENT_DIST">CALIB_ZERO_TANGENT_DIST</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CirclesGridFinderParameters_ASYMMETRIC_GRID">CirclesGridFinderParameters_ASYMMETRIC_GRID</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CirclesGridFinderParameters_SYMMETRIC_GRID">CirclesGridFinderParameters_SYMMETRIC_GRID</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CV_DLS">CV_DLS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CV_EPNP">CV_EPNP</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CV_ITERATIVE">CV_ITERATIVE</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CV_P3P">CV_P3P</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CvLevMarq_CALC_J">CvLevMarq_CALC_J</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CvLevMarq_CHECK_ERR">CvLevMarq_CHECK_ERR</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CvLevMarq_DONE">CvLevMarq_DONE</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#CvLevMarq_STARTED">CvLevMarq_STARTED</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_CHECK_COND">fisheye_CALIB_CHECK_COND</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_FIX_FOCAL_LENGTH">fisheye_CALIB_FIX_FOCAL_LENGTH</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_FIX_INTRINSIC">fisheye_CALIB_FIX_INTRINSIC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_FIX_K1">fisheye_CALIB_FIX_K1</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_FIX_K2">fisheye_CALIB_FIX_K2</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_FIX_K3">fisheye_CALIB_FIX_K3</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_FIX_K4">fisheye_CALIB_FIX_K4</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_FIX_PRINCIPAL_POINT">fisheye_CALIB_FIX_PRINCIPAL_POINT</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_FIX_SKEW">fisheye_CALIB_FIX_SKEW</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_RECOMPUTE_EXTRINSIC">fisheye_CALIB_RECOMPUTE_EXTRINSIC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_USE_INTRINSIC_GUESS">fisheye_CALIB_USE_INTRINSIC_GUESS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_CALIB_ZERO_DISPARITY">fisheye_CALIB_ZERO_DISPARITY</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#FM_7POINT">FM_7POINT</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#FM_8POINT">FM_8POINT</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#FM_LMEDS">FM_LMEDS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#FM_RANSAC">FM_RANSAC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#LMEDS">LMEDS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#LOCAL_OPTIM_GC">LOCAL_OPTIM_GC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#LOCAL_OPTIM_INNER_AND_ITER_LO">LOCAL_OPTIM_INNER_AND_ITER_LO</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#LOCAL_OPTIM_INNER_LO">LOCAL_OPTIM_INNER_LO</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#LOCAL_OPTIM_NULL">LOCAL_OPTIM_NULL</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#LOCAL_OPTIM_SIGMA">LOCAL_OPTIM_SIGMA</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#NEIGH_FLANN_KNN">NEIGH_FLANN_KNN</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#NEIGH_FLANN_RADIUS">NEIGH_FLANN_RADIUS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#NEIGH_GRID">NEIGH_GRID</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#PROJ_SPHERICAL_EQRECT">PROJ_SPHERICAL_EQRECT</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#PROJ_SPHERICAL_ORTHO">PROJ_SPHERICAL_ORTHO</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#RANSAC">RANSAC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#RHO">RHO</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SAMPLING_NAPSAC">SAMPLING_NAPSAC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SAMPLING_PROGRESSIVE_NAPSAC">SAMPLING_PROGRESSIVE_NAPSAC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SAMPLING_PROSAC">SAMPLING_PROSAC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SAMPLING_UNIFORM">SAMPLING_UNIFORM</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SCORE_METHOD_LMEDS">SCORE_METHOD_LMEDS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SCORE_METHOD_MAGSAC">SCORE_METHOD_MAGSAC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SCORE_METHOD_MSAC">SCORE_METHOD_MSAC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SCORE_METHOD_RANSAC">SCORE_METHOD_RANSAC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_AP3P">SOLVEPNP_AP3P</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_DLS">SOLVEPNP_DLS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_EPNP">SOLVEPNP_EPNP</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_IPPE">SOLVEPNP_IPPE</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_IPPE_SQUARE">SOLVEPNP_IPPE_SQUARE</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_ITERATIVE">SOLVEPNP_ITERATIVE</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_MAX_COUNT">SOLVEPNP_MAX_COUNT</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_P3P">SOLVEPNP_P3P</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_SQPNP">SOLVEPNP_SQPNP</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#SOLVEPNP_UPNP">SOLVEPNP_UPNP</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#USAC_ACCURATE">USAC_ACCURATE</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#USAC_DEFAULT">USAC_DEFAULT</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#USAC_FAST">USAC_FAST</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#USAC_FM_8PTS">USAC_FM_8PTS</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#USAC_MAGSAC">USAC_MAGSAC</a></span></code> </td>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#USAC_PARALLEL">USAC_PARALLEL</a></span></code> </td>
|
|
</tr>
|
|
<tr class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#USAC_PROSAC">USAC_PROSAC</a></span></code> </td>
|
|
</tr>
|
|
</table>
|
|
</li>
|
|
</ul>
|
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
|
<ul class="blockList">
|
|
<li class="blockList"><a name="constructor.summary">
|
|
<!-- -->
|
|
</a>
|
|
<h3>Constructor Summary</h3>
|
|
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
|
|
<caption><span>Constructors</span><span class="tabEnd"> </span></caption>
|
|
<tr>
|
|
<th class="colOne" scope="col">Constructor and Description</th>
|
|
</tr>
|
|
<tr class="altColor">
|
|
<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#Calib3d--">Calib3d</a></span>()</code> </td>
|
|
</tr>
|
|
</table>
|
|
</li>
|
|
</ul>
|
|
<!-- ========== METHOD SUMMARY =========== -->
|
|
<ul class="blockList">
|
|
<li class="blockList"><a name="method.summary">
|
|
<!-- -->
|
|
</a>
|
|
<h3>Method Summary</h3>
|
|
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
|
|
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption>
|
|
<tr>
|
|
<th class="colFirst" scope="col">Modifier and Type</th>
|
|
<th class="colLast" scope="col">Method and Description</th>
|
|
</tr>
|
|
<tr id="i0" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCamera-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-">calibrateCamera</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs)</code> </td>
|
|
</tr>
|
|
<tr id="i1" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCamera-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-">calibrateCamera</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags)</code> </td>
|
|
</tr>
|
|
<tr id="i2" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCamera-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-org.opencv.core.TermCriteria-">calibrateCamera</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code> </td>
|
|
</tr>
|
|
<tr id="i3" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCameraExtended-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">calibrateCameraExtended</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors)</code>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration
|
|
pattern.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i4" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCameraExtended-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">calibrateCameraExtended</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags)</code>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration
|
|
pattern.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i5" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCameraExtended-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">calibrateCameraExtended</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration
|
|
pattern.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i6" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCameraRO-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-">calibrateCameraRO</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints)</code> </td>
|
|
</tr>
|
|
<tr id="i7" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCameraRO-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-int-">calibrateCameraRO</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
int flags)</code> </td>
|
|
</tr>
|
|
<tr id="i8" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCameraRO-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">calibrateCameraRO</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code> </td>
|
|
</tr>
|
|
<tr id="i9" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCameraROExtended-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">calibrateCameraROExtended</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors)</code>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration pattern.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i10" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCameraROExtended-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">calibrateCameraROExtended</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags)</code>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration pattern.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i11" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateCameraROExtended-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">calibrateCameraROExtended</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration pattern.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i12" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateHandEye-java.util.List-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-">calibrateHandEye</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_gripper2base,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_gripper2base,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_target2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_target2cam,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_cam2gripper,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_cam2gripper)</code>
|
|
<div class="block">Computes Hand-Eye calibration: \(_{}^{g}\textrm{T}_c\)</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i13" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateHandEye-java.util.List-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-int-">calibrateHandEye</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_gripper2base,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_gripper2base,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_target2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_target2cam,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_cam2gripper,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_cam2gripper,
|
|
int method)</code>
|
|
<div class="block">Computes Hand-Eye calibration: \(_{}^{g}\textrm{T}_c\)</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i14" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateRobotWorldHandEye-java.util.List-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">calibrateRobotWorldHandEye</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_world2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_world2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_base2gripper,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_base2gripper,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_base2world,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_base2world,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_gripper2cam,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_gripper2cam)</code>
|
|
<div class="block">Computes Robot-World/Hand-Eye calibration: \(_{}^{w}\textrm{T}_b\) and \(_{}^{c}\textrm{T}_g\)</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i15" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrateRobotWorldHandEye-java.util.List-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">calibrateRobotWorldHandEye</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_world2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_world2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_base2gripper,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_base2gripper,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_base2world,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_base2world,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_gripper2cam,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_gripper2cam,
|
|
int method)</code>
|
|
<div class="block">Computes Robot-World/Hand-Eye calibration: \(_{}^{w}\textrm{T}_b\) and \(_{}^{c}\textrm{T}_g\)</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i16" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#calibrationMatrixValues-org.opencv.core.Mat-org.opencv.core.Size-double-double-double:A-double:A-double:A-org.opencv.core.Point-double:A-">calibrationMatrixValues</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double apertureWidth,
|
|
double apertureHeight,
|
|
double[] fovx,
|
|
double[] fovy,
|
|
double[] focalLength,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> principalPoint,
|
|
double[] aspectRatio)</code>
|
|
<div class="block">Computes useful camera characteristics from the camera intrinsic matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i17" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#checkChessboard-org.opencv.core.Mat-org.opencv.core.Size-">checkChessboard</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> img,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> size)</code> </td>
|
|
</tr>
|
|
<tr id="i18" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">composeRT</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3)</code>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i19" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">composeRT</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1)</code>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i20" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">composeRT</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1)</code>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i21" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">composeRT</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2)</code>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i22" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">composeRT</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2)</code>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i23" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">composeRT</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr1)</code>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i24" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">composeRT</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dt1)</code>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i25" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">composeRT</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr2)</code>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i26" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">composeRT</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dt2)</code>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i27" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#computeCorrespondEpilines-org.opencv.core.Mat-int-org.opencv.core.Mat-org.opencv.core.Mat-">computeCorrespondEpilines</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points,
|
|
int whichImage,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> lines)</code>
|
|
<div class="block">For points in an image of a stereo pair, computes the corresponding epilines in the other image.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i28" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#convertPointsFromHomogeneous-org.opencv.core.Mat-org.opencv.core.Mat-">convertPointsFromHomogeneous</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst)</code>
|
|
<div class="block">Converts points from homogeneous to Euclidean space.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i29" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#convertPointsToHomogeneous-org.opencv.core.Mat-org.opencv.core.Mat-">convertPointsToHomogeneous</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst)</code>
|
|
<div class="block">Converts points from Euclidean to homogeneous space.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i30" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#correctMatches-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">correctMatches</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newPoints1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newPoints2)</code>
|
|
<div class="block">Refines coordinates of corresponding points.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i31" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#decomposeEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">decomposeEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t)</code>
|
|
<div class="block">Decompose an essential matrix to possible rotations and translation.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i32" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#decomposeHomographyMat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-java.util.List-">decomposeHomographyMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rotations,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> translations,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> normals)</code>
|
|
<div class="block">Decompose a homography matrix to rotation(s), translation(s) and plane normal(s).</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i33" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">decomposeProjectionMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect)</code>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i34" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">decomposeProjectionMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixX)</code>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i35" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">decomposeProjectionMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixX,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixY)</code>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i36" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">decomposeProjectionMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixX,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixY,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixZ)</code>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i37" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">decomposeProjectionMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixX,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixY,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixZ,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> eulerAngles)</code>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i38" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#drawChessboardCorners-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.MatOfPoint2f-boolean-">drawChessboardCorners</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> corners,
|
|
boolean patternWasFound)</code>
|
|
<div class="block">Renders the detected chessboard corners.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i39" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#drawFrameAxes-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-float-">drawFrameAxes</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
float length)</code>
|
|
<div class="block">Draw axes of the world/object coordinate system from pose estimation.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i40" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#drawFrameAxes-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-float-int-">drawFrameAxes</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
float length,
|
|
int thickness)</code>
|
|
<div class="block">Draw axes of the world/object coordinate system from pose estimation.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i41" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-">estimateAffine2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i42" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">estimateAffine2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i43" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">estimateAffine2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i44" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">estimateAffine2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i45" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-">estimateAffine2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i46" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-double-">estimateAffine2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters,
|
|
double confidence)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i47" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-double-long-">estimateAffine2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters,
|
|
double confidence,
|
|
long refineIters)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i48" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">estimateAffine2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pts1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pts2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</code> </td>
|
|
</tr>
|
|
<tr id="i49" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-">estimateAffine3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i50" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-double:A-">estimateAffine3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
double[] scale)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i51" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-double:A-boolean-">estimateAffine3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
double[] scale,
|
|
boolean force_rotation)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i52" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">estimateAffine3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i53" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">estimateAffine3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
double ransacThreshold)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i54" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-double-">estimateAffine3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
double ransacThreshold,
|
|
double confidence)</code>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i55" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-">estimateAffinePartial2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to)</code>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i56" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">estimateAffinePartial2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</code>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i57" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">estimateAffinePartial2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method)</code>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i58" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">estimateAffinePartial2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold)</code>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i59" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-">estimateAffinePartial2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters)</code>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i60" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-double-">estimateAffinePartial2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters,
|
|
double confidence)</code>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i61" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-double-long-">estimateAffinePartial2D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters,
|
|
double confidence,
|
|
long refineIters)</code>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i62" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Scalar.html" title="class in org.opencv.core">Scalar</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateChessboardSharpness-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-">estimateChessboardSharpness</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners)</code>
|
|
<div class="block">Estimates the sharpness of a detected chessboard.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i63" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Scalar.html" title="class in org.opencv.core">Scalar</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateChessboardSharpness-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-float-">estimateChessboardSharpness</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
float rise_distance)</code>
|
|
<div class="block">Estimates the sharpness of a detected chessboard.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i64" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Scalar.html" title="class in org.opencv.core">Scalar</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateChessboardSharpness-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-float-boolean-">estimateChessboardSharpness</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
float rise_distance,
|
|
boolean vertical)</code>
|
|
<div class="block">Estimates the sharpness of a detected chessboard.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i65" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Scalar.html" title="class in org.opencv.core">Scalar</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateChessboardSharpness-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-float-boolean-org.opencv.core.Mat-">estimateChessboardSharpness</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
float rise_distance,
|
|
boolean vertical,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> sharpness)</code>
|
|
<div class="block">Estimates the sharpness of a detected chessboard.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i66" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateTranslation3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">estimateTranslation3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</code>
|
|
<div class="block">Computes an optimal translation between two 3D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i67" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateTranslation3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">estimateTranslation3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
double ransacThreshold)</code>
|
|
<div class="block">Computes an optimal translation between two 3D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i68" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#estimateTranslation3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-double-">estimateTranslation3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
double ransacThreshold,
|
|
double confidence)</code>
|
|
<div class="block">Computes an optimal translation between two 3D point sets.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i69" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#filterHomographyDecompByVisibleRefpoints-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">filterHomographyDecompByVisibleRefpoints</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rotations,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> normals,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> beforePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> afterPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> possibleSolutions)</code>
|
|
<div class="block">Filters homography decompositions based on additional information.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i70" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#filterHomographyDecompByVisibleRefpoints-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">filterHomographyDecompByVisibleRefpoints</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rotations,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> normals,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> beforePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> afterPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> possibleSolutions,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pointsMask)</code>
|
|
<div class="block">Filters homography decompositions based on additional information.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i71" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#filterSpeckles-org.opencv.core.Mat-double-int-double-">filterSpeckles</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> img,
|
|
double newVal,
|
|
int maxSpeckleSize,
|
|
double maxDiff)</code>
|
|
<div class="block">Filters off small noise blobs (speckles) in the disparity map</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i72" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#filterSpeckles-org.opencv.core.Mat-double-int-double-org.opencv.core.Mat-">filterSpeckles</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> img,
|
|
double newVal,
|
|
int maxSpeckleSize,
|
|
double maxDiff,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> buf)</code>
|
|
<div class="block">Filters off small noise blobs (speckles) in the disparity map</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i73" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#find4QuadCornerSubpix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-">find4QuadCornerSubpix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> img,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> region_size)</code> </td>
|
|
</tr>
|
|
<tr id="i74" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findChessboardCorners-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.MatOfPoint2f-">findChessboardCorners</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> corners)</code>
|
|
<div class="block">Finds the positions of internal corners of the chessboard.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i75" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findChessboardCorners-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.MatOfPoint2f-int-">findChessboardCorners</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> corners,
|
|
int flags)</code>
|
|
<div class="block">Finds the positions of internal corners of the chessboard.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i76" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findChessboardCornersSB-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-">findChessboardCornersSB</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners)</code> </td>
|
|
</tr>
|
|
<tr id="i77" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findChessboardCornersSB-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-int-">findChessboardCornersSB</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
int flags)</code> </td>
|
|
</tr>
|
|
<tr id="i78" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findChessboardCornersSBWithMeta-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-int-org.opencv.core.Mat-">findChessboardCornersSBWithMeta</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> meta)</code>
|
|
<div class="block">Finds the positions of internal corners of the chessboard using a sector based approach.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i79" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findCirclesGrid-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-">findCirclesGrid</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> centers)</code> </td>
|
|
</tr>
|
|
<tr id="i80" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findCirclesGrid-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-int-">findCirclesGrid</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> centers,
|
|
int flags)</code> </td>
|
|
</tr>
|
|
<tr id="i81" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2)</code> </td>
|
|
</tr>
|
|
<tr id="i82" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal)</code> </td>
|
|
</tr>
|
|
<tr id="i83" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp)</code> </td>
|
|
</tr>
|
|
<tr id="i84" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method)</code> </td>
|
|
</tr>
|
|
<tr id="i85" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-double-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method,
|
|
double prob)</code> </td>
|
|
</tr>
|
|
<tr id="i86" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-double-double-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method,
|
|
double prob,
|
|
double threshold)</code> </td>
|
|
</tr>
|
|
<tr id="i87" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-double-double-int-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
int maxIters)</code> </td>
|
|
</tr>
|
|
<tr id="i88" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-double-double-int-org.opencv.core.Mat-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
int maxIters,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code> </td>
|
|
</tr>
|
|
<tr id="i89" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i90" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i91" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method,
|
|
double prob)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i92" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method,
|
|
double prob,
|
|
double threshold)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i93" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-int-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
int maxIters)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i94" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-int-org.opencv.core.Mat-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
int maxIters,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i95" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i96" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
int method)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i97" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
int method,
|
|
double prob)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i98" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
int method,
|
|
double prob,
|
|
double threshold)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i99" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-org.opencv.core.Mat-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i100" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">findEssentialMat</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dist_coeff1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dist_coeff2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</code> </td>
|
|
</tr>
|
|
<tr id="i101" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-">findFundamentalMat</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2)</code> </td>
|
|
</tr>
|
|
<tr id="i102" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-">findFundamentalMat</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method)</code> </td>
|
|
</tr>
|
|
<tr id="i103" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-">findFundamentalMat</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold)</code> </td>
|
|
</tr>
|
|
<tr id="i104" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-double-">findFundamentalMat</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
double confidence)</code> </td>
|
|
</tr>
|
|
<tr id="i105" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-double-int-">findFundamentalMat</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
double confidence,
|
|
int maxIters)</code>
|
|
<div class="block">Calculates a fundamental matrix from the corresponding points in two images.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i106" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-double-int-org.opencv.core.Mat-">findFundamentalMat</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
double confidence,
|
|
int maxIters,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code>
|
|
<div class="block">Calculates a fundamental matrix from the corresponding points in two images.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i107" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-double-org.opencv.core.Mat-">findFundamentalMat</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
double confidence,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code> </td>
|
|
</tr>
|
|
<tr id="i108" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">findFundamentalMat</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</code> </td>
|
|
</tr>
|
|
<tr id="i109" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-">findHomography</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints)</code>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i110" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-">findHomography</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method)</code>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i111" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-">findHomography</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method,
|
|
double ransacReprojThreshold)</code>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i112" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-org.opencv.core.Mat-">findHomography</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i113" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-org.opencv.core.Mat-int-">findHomography</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
int maxIters)</code>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i114" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-org.opencv.core.Mat-int-double-">findHomography</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
int maxIters,
|
|
double confidence)</code>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i115" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">findHomography</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</code> </td>
|
|
</tr>
|
|
<tr id="i116" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_calibrate-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-">fisheye_calibrate</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs)</code>
|
|
<div class="block">Performs camera calibaration</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i117" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_calibrate-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-">fisheye_calibrate</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags)</code>
|
|
<div class="block">Performs camera calibaration</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i118" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_calibrate-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-org.opencv.core.TermCriteria-">fisheye_calibrate</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code>
|
|
<div class="block">Performs camera calibaration</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i119" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_distortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_distortPoints</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D)</code>
|
|
<div class="block">Distorts 2D points using fisheye model.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i120" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_distortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">fisheye_distortPoints</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
double alpha)</code>
|
|
<div class="block">Distorts 2D points using fisheye model.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i121" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_estimateNewCameraMatrixForUndistortRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_estimateNewCameraMatrixForUndistortRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P)</code>
|
|
<div class="block">Estimates new camera intrinsic matrix for undistortion or rectification.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i122" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_estimateNewCameraMatrixForUndistortRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-double-">fisheye_estimateNewCameraMatrixForUndistortRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
double balance)</code>
|
|
<div class="block">Estimates new camera intrinsic matrix for undistortion or rectification.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i123" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_estimateNewCameraMatrixForUndistortRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Size-">fisheye_estimateNewCameraMatrixForUndistortRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
double balance,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> new_size)</code>
|
|
<div class="block">Estimates new camera intrinsic matrix for undistortion or rectification.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i124" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_estimateNewCameraMatrixForUndistortRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Size-double-">fisheye_estimateNewCameraMatrixForUndistortRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
double balance,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> new_size,
|
|
double fov_scale)</code>
|
|
<div class="block">Estimates new camera intrinsic matrix for undistortion or rectification.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i125" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_initUndistortRectifyMap-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_initUndistortRectifyMap</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> size,
|
|
int m1type,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map2)</code>
|
|
<div class="block">Computes undistortion and rectification maps for image transform by #remap.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i126" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_projectPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_projectPoints</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D)</code> </td>
|
|
</tr>
|
|
<tr id="i127" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_projectPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">fisheye_projectPoints</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
double alpha)</code> </td>
|
|
</tr>
|
|
<tr id="i128" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_projectPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Mat-">fisheye_projectPoints</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> jacobian)</code> </td>
|
|
</tr>
|
|
<tr id="i129" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_stereoCalibrate</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T)</code>
|
|
<div class="block">Performs stereo calibration</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i130" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-int-">fisheye_stereoCalibrate</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
int flags)</code>
|
|
<div class="block">Performs stereo calibration</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i131" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">fisheye_stereoCalibrate</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code>
|
|
<div class="block">Performs stereo calibration</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i132" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">fisheye_stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags)</code>
|
|
<div class="block">Stereo rectification for fisheye camera model</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i133" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.Size-">fisheye_stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize)</code>
|
|
<div class="block">Stereo rectification for fisheye camera model</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i134" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.Size-double-">fisheye_stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize,
|
|
double balance)</code>
|
|
<div class="block">Stereo rectification for fisheye camera model</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i135" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.Size-double-double-">fisheye_stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize,
|
|
double balance,
|
|
double fov_scale)</code>
|
|
<div class="block">Stereo rectification for fisheye camera model</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i136" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_undistortImage-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_undistortImage</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D)</code>
|
|
<div class="block">Transforms an image to compensate for fisheye lens distortion.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i137" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_undistortImage-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_undistortImage</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Knew)</code>
|
|
<div class="block">Transforms an image to compensate for fisheye lens distortion.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i138" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_undistortImage-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-">fisheye_undistortImage</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Knew,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> new_size)</code>
|
|
<div class="block">Transforms an image to compensate for fisheye lens distortion.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i139" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_undistortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_undistortPoints</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D)</code>
|
|
<div class="block">Undistorts 2D points using fisheye model</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i140" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_undistortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_undistortPoints</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R)</code>
|
|
<div class="block">Undistorts 2D points using fisheye model</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i141" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#fisheye_undistortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">fisheye_undistortPoints</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P)</code>
|
|
<div class="block">Undistorts 2D points using fisheye model</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i142" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#getDefaultNewCameraMatrix-org.opencv.core.Mat-">getDefaultNewCameraMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix)</code>
|
|
<div class="block">Returns the default new camera matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i143" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#getDefaultNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Size-">getDefaultNewCameraMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imgsize)</code>
|
|
<div class="block">Returns the default new camera matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i144" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#getDefaultNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Size-boolean-">getDefaultNewCameraMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imgsize,
|
|
boolean centerPrincipalPoint)</code>
|
|
<div class="block">Returns the default new camera matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i145" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#getOptimalNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-double-">getOptimalNewCameraMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double alpha)</code>
|
|
<div class="block">Returns the new camera intrinsic matrix based on the free scaling parameter.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i146" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#getOptimalNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-double-org.opencv.core.Size-">getOptimalNewCameraMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImgSize)</code>
|
|
<div class="block">Returns the new camera intrinsic matrix based on the free scaling parameter.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i147" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#getOptimalNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-double-org.opencv.core.Size-org.opencv.core.Rect-">getOptimalNewCameraMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImgSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI)</code>
|
|
<div class="block">Returns the new camera intrinsic matrix based on the free scaling parameter.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i148" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#getOptimalNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-double-org.opencv.core.Size-org.opencv.core.Rect-boolean-">getOptimalNewCameraMatrix</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImgSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI,
|
|
boolean centerPrincipalPoint)</code>
|
|
<div class="block">Returns the new camera intrinsic matrix based on the free scaling parameter.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i149" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#getValidDisparityROI-org.opencv.core.Rect-org.opencv.core.Rect-int-int-int-">getValidDisparityROI</a></span>(<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> roi1,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> roi2,
|
|
int minDisparity,
|
|
int numberOfDisparities,
|
|
int blockSize)</code> </td>
|
|
</tr>
|
|
<tr id="i150" class="altColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#initCameraMatrix2D-java.util.List-java.util.List-org.opencv.core.Size-">initCameraMatrix2D</a></span>(java.util.List<<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize)</code>
|
|
<div class="block">Finds an initial camera intrinsic matrix from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i151" class="rowColor">
|
|
<td class="colFirst"><code>static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a></code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#initCameraMatrix2D-java.util.List-java.util.List-org.opencv.core.Size-double-">initCameraMatrix2D</a></span>(java.util.List<<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double aspectRatio)</code>
|
|
<div class="block">Finds an initial camera intrinsic matrix from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i152" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#initInverseRectificationMap-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-">initInverseRectificationMap</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newCameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> size,
|
|
int m1type,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map2)</code>
|
|
<div class="block">Computes the projection and inverse-rectification transformation map.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i153" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#initUndistortRectifyMap-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-">initUndistortRectifyMap</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newCameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> size,
|
|
int m1type,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map2)</code>
|
|
<div class="block">Computes the undistortion and rectification transformation map.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i154" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#matMulDeriv-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">matMulDeriv</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> A,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> B,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dABdA,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dABdB)</code>
|
|
<div class="block">Computes partial derivatives of the matrix product for each multiplied matrix.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i155" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#projectPoints-org.opencv.core.MatOfPoint3f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.MatOfPoint2f-">projectPoints</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints)</code>
|
|
<div class="block">Projects 3D points to an image plane.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i156" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#projectPoints-org.opencv.core.MatOfPoint3f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-">projectPoints</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> jacobian)</code>
|
|
<div class="block">Projects 3D points to an image plane.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i157" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#projectPoints-org.opencv.core.MatOfPoint3f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-double-">projectPoints</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> jacobian,
|
|
double aspectRatio)</code>
|
|
<div class="block">Projects 3D points to an image plane.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i158" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t)</code> </td>
|
|
</tr>
|
|
<tr id="i159" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double focal)</code> </td>
|
|
</tr>
|
|
<tr id="i160" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp)</code> </td>
|
|
</tr>
|
|
<tr id="i161" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-org.opencv.core.Mat-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code> </td>
|
|
</tr>
|
|
<tr id="i162" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t)</code>
|
|
<div class="block">Recovers the relative camera rotation and the translation from an estimated essential
|
|
matrix and the corresponding points in two images, using cheirality check.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i163" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double distanceThresh)</code> </td>
|
|
</tr>
|
|
<tr id="i164" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Mat-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double distanceThresh,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code> </td>
|
|
</tr>
|
|
<tr id="i165" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Mat-org.opencv.core.Mat-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double distanceThresh,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> triangulatedPoints)</code> </td>
|
|
</tr>
|
|
<tr id="i166" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code>
|
|
<div class="block">Recovers the relative camera rotation and the translation from an estimated essential
|
|
matrix and the corresponding points in two images, using cheirality check.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i167" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t)</code>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i168" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
int method)</code>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i169" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
int method,
|
|
double prob)</code>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i170" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
int method,
|
|
double prob,
|
|
double threshold)</code>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i171" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-org.opencv.core.Mat-">recoverPose</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</code>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i172" class="altColor">
|
|
<td class="colFirst"><code>static float</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#rectify3Collinear-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Size-org.opencv.core.Rect-org.opencv.core.Rect-int-">rectify3Collinear</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs3,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imgpt1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imgpt3,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R12,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T12,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R13,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T13,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImgSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> roi1,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> roi2,
|
|
int flags)</code> </td>
|
|
</tr>
|
|
<tr id="i173" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#reprojectImageTo3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">reprojectImageTo3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> _3dImage,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q)</code>
|
|
<div class="block">Reprojects a disparity image to 3D space.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i174" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#reprojectImageTo3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-boolean-">reprojectImageTo3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> _3dImage,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
boolean handleMissingValues)</code>
|
|
<div class="block">Reprojects a disparity image to 3D space.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i175" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#reprojectImageTo3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-">reprojectImageTo3D</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> _3dImage,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
boolean handleMissingValues,
|
|
int ddepth)</code>
|
|
<div class="block">Reprojects a disparity image to 3D space.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i176" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#Rodrigues-org.opencv.core.Mat-org.opencv.core.Mat-">Rodrigues</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst)</code>
|
|
<div class="block">Converts a rotation matrix to a rotation vector or vice versa.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i177" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#Rodrigues-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">Rodrigues</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> jacobian)</code>
|
|
<div class="block">Converts a rotation matrix to a rotation vector or vice versa.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i178" class="altColor">
|
|
<td class="colFirst"><code>static double[]</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#RQDecomp3x3-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">RQDecomp3x3</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxR,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxQ)</code>
|
|
<div class="block">Computes an RQ decomposition of 3x3 matrices.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i179" class="rowColor">
|
|
<td class="colFirst"><code>static double[]</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#RQDecomp3x3-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">RQDecomp3x3</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxR,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxQ,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qx)</code>
|
|
<div class="block">Computes an RQ decomposition of 3x3 matrices.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i180" class="altColor">
|
|
<td class="colFirst"><code>static double[]</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#RQDecomp3x3-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">RQDecomp3x3</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxR,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxQ,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qx,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qy)</code>
|
|
<div class="block">Computes an RQ decomposition of 3x3 matrices.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i181" class="rowColor">
|
|
<td class="colFirst"><code>static double[]</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#RQDecomp3x3-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">RQDecomp3x3</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxR,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxQ,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qx,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qy,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qz)</code>
|
|
<div class="block">Computes an RQ decomposition of 3x3 matrices.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i182" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#sampsonDistance-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">sampsonDistance</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F)</code>
|
|
<div class="block">Calculates the Sampson Distance between two points.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i183" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solveP3P-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-">solveP3P</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags)</code>
|
|
<div class="block">Finds an object pose from 3 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i184" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnP-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-">solvePnP</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i185" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnP-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-">solvePnP</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i186" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnP-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-">solvePnP</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int flags)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i187" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-">solvePnPGeneric</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i188" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-">solvePnPGeneric</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i189" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-int-">solvePnPGeneric</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess,
|
|
int flags)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i190" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-int-org.opencv.core.Mat-">solvePnPGeneric</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i191" class="rowColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-int-org.opencv.core.Mat-org.opencv.core.Mat-">solvePnPGeneric</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i192" class="altColor">
|
|
<td class="colFirst"><code>static int</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-int-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">solvePnPGeneric</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> reprojectionError)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i193" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-">solvePnPRansac</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i194" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-">solvePnPRansac</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i195" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-">solvePnPRansac</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i196" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-float-">solvePnPRansac</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount,
|
|
float reprojectionError)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i197" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-float-double-">solvePnPRansac</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount,
|
|
float reprojectionError,
|
|
double confidence)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i198" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-float-double-org.opencv.core.Mat-">solvePnPRansac</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount,
|
|
float reprojectionError,
|
|
double confidence,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i199" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-float-double-org.opencv.core.Mat-int-">solvePnPRansac</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount,
|
|
float reprojectionError,
|
|
double confidence,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int flags)</code>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i200" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">solvePnPRansac</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</code> </td>
|
|
</tr>
|
|
<tr id="i201" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">solvePnPRansac</a></span>(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</code> </td>
|
|
</tr>
|
|
<tr id="i202" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRefineLM-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">solvePnPRefineLM</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</code>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i203" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRefineLM-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.TermCriteria-">solvePnPRefineLM</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i204" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRefineVVS-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">solvePnPRefineVVS</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</code>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i205" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRefineVVS-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.TermCriteria-">solvePnPRefineVVS</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i206" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#solvePnPRefineVVS-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.TermCriteria-double-">solvePnPRefineVVS</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria,
|
|
double VVSlambda)</code>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i207" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">stereoCalibrate</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F)</code> </td>
|
|
</tr>
|
|
<tr id="i208" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">stereoCalibrate</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
int flags)</code> </td>
|
|
</tr>
|
|
<tr id="i209" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">stereoCalibrate</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code> </td>
|
|
</tr>
|
|
<tr id="i210" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoCalibrateExtended-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">stereoCalibrateExtended</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors)</code>
|
|
<div class="block">Calibrates a stereo camera set up.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i211" class="rowColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoCalibrateExtended-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">stereoCalibrateExtended</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags)</code>
|
|
<div class="block">Calibrates a stereo camera set up.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i212" class="altColor">
|
|
<td class="colFirst"><code>static double</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoCalibrateExtended-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">stereoCalibrateExtended</a></span>(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code>
|
|
<div class="block">Calibrates a stereo camera set up.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i213" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q)</code>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i214" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags)</code>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i215" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
double alpha)</code>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i216" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-org.opencv.core.Size-">stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize)</code>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i217" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-org.opencv.core.Size-org.opencv.core.Rect-">stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI1)</code>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i218" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-org.opencv.core.Size-org.opencv.core.Rect-org.opencv.core.Rect-">stereoRectify</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI1,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI2)</code>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i219" class="rowColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoRectifyUncalibrated-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-">stereoRectifyUncalibrated</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imgSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H2)</code>
|
|
<div class="block">Computes a rectification transform for an uncalibrated stereo camera.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i220" class="altColor">
|
|
<td class="colFirst"><code>static boolean</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#stereoRectifyUncalibrated-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-double-">stereoRectifyUncalibrated</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imgSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H2,
|
|
double threshold)</code>
|
|
<div class="block">Computes a rectification transform for an uncalibrated stereo camera.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i221" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#triangulatePoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">triangulatePoints</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projPoints1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projPoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points4D)</code>
|
|
<div class="block">This function reconstructs 3-dimensional points (in homogeneous coordinates) by using
|
|
their observations with a stereo camera.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i222" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#undistort-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">undistort</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs)</code>
|
|
<div class="block">Transforms an image to compensate for lens distortion.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i223" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#undistort-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">undistort</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newCameraMatrix)</code>
|
|
<div class="block">Transforms an image to compensate for lens distortion.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i224" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#undistortPoints-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.Mat-">undistortPoints</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> src,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs)</code>
|
|
<div class="block">Computes the ideal point coordinates from the observed point coordinates.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i225" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#undistortPoints-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">undistortPoints</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> src,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R)</code>
|
|
<div class="block">Computes the ideal point coordinates from the observed point coordinates.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i226" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#undistortPoints-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">undistortPoints</a></span>(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> src,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P)</code>
|
|
<div class="block">Computes the ideal point coordinates from the observed point coordinates.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i227" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#undistortPointsIter-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.TermCriteria-">undistortPointsIter</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</code>
|
|
<div class="block"><b>Note:</b> Default version of #undistortPoints does 5 iterations to compute undistorted points.</div>
|
|
</td>
|
|
</tr>
|
|
<tr id="i228" class="altColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#validateDisparity-org.opencv.core.Mat-org.opencv.core.Mat-int-int-">validateDisparity</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cost,
|
|
int minDisparity,
|
|
int numberOfDisparities)</code> </td>
|
|
</tr>
|
|
<tr id="i229" class="rowColor">
|
|
<td class="colFirst"><code>static void</code></td>
|
|
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/opencv/calib3d/Calib3d.html#validateDisparity-org.opencv.core.Mat-org.opencv.core.Mat-int-int-int-">validateDisparity</a></span>(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cost,
|
|
int minDisparity,
|
|
int numberOfDisparities,
|
|
int disp12MaxDisp)</code> </td>
|
|
</tr>
|
|
</table>
|
|
<ul class="blockList">
|
|
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
|
|
<!-- -->
|
|
</a>
|
|
<h3>Methods inherited from class java.lang.Object</h3>
|
|
<code>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div class="details">
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<!-- ============ FIELD DETAIL =========== -->
|
|
<ul class="blockList">
|
|
<li class="blockList"><a name="field.detail">
|
|
<!-- -->
|
|
</a>
|
|
<h3>Field Detail</h3>
|
|
<a name="CALIB_CB_ACCURACY">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_ACCURACY</h4>
|
|
<pre>public static final int CALIB_CB_ACCURACY</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_ACCURACY">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_ADAPTIVE_THRESH">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_ADAPTIVE_THRESH</h4>
|
|
<pre>public static final int CALIB_CB_ADAPTIVE_THRESH</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_ADAPTIVE_THRESH">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_ASYMMETRIC_GRID">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_ASYMMETRIC_GRID</h4>
|
|
<pre>public static final int CALIB_CB_ASYMMETRIC_GRID</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_ASYMMETRIC_GRID">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_CLUSTERING">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_CLUSTERING</h4>
|
|
<pre>public static final int CALIB_CB_CLUSTERING</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_CLUSTERING">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_EXHAUSTIVE">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_EXHAUSTIVE</h4>
|
|
<pre>public static final int CALIB_CB_EXHAUSTIVE</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_EXHAUSTIVE">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_FAST_CHECK">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_FAST_CHECK</h4>
|
|
<pre>public static final int CALIB_CB_FAST_CHECK</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_FAST_CHECK">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_FILTER_QUADS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_FILTER_QUADS</h4>
|
|
<pre>public static final int CALIB_CB_FILTER_QUADS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_FILTER_QUADS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_LARGER">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_LARGER</h4>
|
|
<pre>public static final int CALIB_CB_LARGER</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_LARGER">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_MARKER">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_MARKER</h4>
|
|
<pre>public static final int CALIB_CB_MARKER</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_MARKER">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_NORMALIZE_IMAGE">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_NORMALIZE_IMAGE</h4>
|
|
<pre>public static final int CALIB_CB_NORMALIZE_IMAGE</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_NORMALIZE_IMAGE">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_CB_SYMMETRIC_GRID">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_CB_SYMMETRIC_GRID</h4>
|
|
<pre>public static final int CALIB_CB_SYMMETRIC_GRID</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_CB_SYMMETRIC_GRID">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_ASPECT_RATIO">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_ASPECT_RATIO</h4>
|
|
<pre>public static final int CALIB_FIX_ASPECT_RATIO</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_ASPECT_RATIO">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_FOCAL_LENGTH">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_FOCAL_LENGTH</h4>
|
|
<pre>public static final int CALIB_FIX_FOCAL_LENGTH</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_FOCAL_LENGTH">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_INTRINSIC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_INTRINSIC</h4>
|
|
<pre>public static final int CALIB_FIX_INTRINSIC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_INTRINSIC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_K1">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_K1</h4>
|
|
<pre>public static final int CALIB_FIX_K1</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_K1">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_K2">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_K2</h4>
|
|
<pre>public static final int CALIB_FIX_K2</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_K2">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_K3">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_K3</h4>
|
|
<pre>public static final int CALIB_FIX_K3</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_K3">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_K4">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_K4</h4>
|
|
<pre>public static final int CALIB_FIX_K4</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_K4">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_K5">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_K5</h4>
|
|
<pre>public static final int CALIB_FIX_K5</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_K5">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_K6">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_K6</h4>
|
|
<pre>public static final int CALIB_FIX_K6</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_K6">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_PRINCIPAL_POINT">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_PRINCIPAL_POINT</h4>
|
|
<pre>public static final int CALIB_FIX_PRINCIPAL_POINT</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_PRINCIPAL_POINT">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_S1_S2_S3_S4">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_S1_S2_S3_S4</h4>
|
|
<pre>public static final int CALIB_FIX_S1_S2_S3_S4</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_S1_S2_S3_S4">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_TANGENT_DIST">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_TANGENT_DIST</h4>
|
|
<pre>public static final int CALIB_FIX_TANGENT_DIST</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_TANGENT_DIST">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_FIX_TAUX_TAUY">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_FIX_TAUX_TAUY</h4>
|
|
<pre>public static final int CALIB_FIX_TAUX_TAUY</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_FIX_TAUX_TAUY">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_HAND_EYE_ANDREFF">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_HAND_EYE_ANDREFF</h4>
|
|
<pre>public static final int CALIB_HAND_EYE_ANDREFF</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_HAND_EYE_ANDREFF">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_HAND_EYE_DANIILIDIS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_HAND_EYE_DANIILIDIS</h4>
|
|
<pre>public static final int CALIB_HAND_EYE_DANIILIDIS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_HAND_EYE_DANIILIDIS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_HAND_EYE_HORAUD">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_HAND_EYE_HORAUD</h4>
|
|
<pre>public static final int CALIB_HAND_EYE_HORAUD</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_HAND_EYE_HORAUD">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_HAND_EYE_PARK">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_HAND_EYE_PARK</h4>
|
|
<pre>public static final int CALIB_HAND_EYE_PARK</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_HAND_EYE_PARK">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_HAND_EYE_TSAI">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_HAND_EYE_TSAI</h4>
|
|
<pre>public static final int CALIB_HAND_EYE_TSAI</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_HAND_EYE_TSAI">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_NINTRINSIC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_NINTRINSIC</h4>
|
|
<pre>public static final int CALIB_NINTRINSIC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_NINTRINSIC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_RATIONAL_MODEL">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_RATIONAL_MODEL</h4>
|
|
<pre>public static final int CALIB_RATIONAL_MODEL</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_RATIONAL_MODEL">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_ROBOT_WORLD_HAND_EYE_LI">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_ROBOT_WORLD_HAND_EYE_LI</h4>
|
|
<pre>public static final int CALIB_ROBOT_WORLD_HAND_EYE_LI</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_ROBOT_WORLD_HAND_EYE_LI">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_ROBOT_WORLD_HAND_EYE_SHAH">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_ROBOT_WORLD_HAND_EYE_SHAH</h4>
|
|
<pre>public static final int CALIB_ROBOT_WORLD_HAND_EYE_SHAH</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_ROBOT_WORLD_HAND_EYE_SHAH">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_SAME_FOCAL_LENGTH">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_SAME_FOCAL_LENGTH</h4>
|
|
<pre>public static final int CALIB_SAME_FOCAL_LENGTH</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_SAME_FOCAL_LENGTH">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_THIN_PRISM_MODEL">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_THIN_PRISM_MODEL</h4>
|
|
<pre>public static final int CALIB_THIN_PRISM_MODEL</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_THIN_PRISM_MODEL">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_TILTED_MODEL">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_TILTED_MODEL</h4>
|
|
<pre>public static final int CALIB_TILTED_MODEL</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_TILTED_MODEL">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_USE_EXTRINSIC_GUESS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_USE_EXTRINSIC_GUESS</h4>
|
|
<pre>public static final int CALIB_USE_EXTRINSIC_GUESS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_USE_EXTRINSIC_GUESS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_USE_INTRINSIC_GUESS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_USE_INTRINSIC_GUESS</h4>
|
|
<pre>public static final int CALIB_USE_INTRINSIC_GUESS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_USE_INTRINSIC_GUESS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_USE_LU">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_USE_LU</h4>
|
|
<pre>public static final int CALIB_USE_LU</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_USE_LU">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_USE_QR">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_USE_QR</h4>
|
|
<pre>public static final int CALIB_USE_QR</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_USE_QR">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_ZERO_DISPARITY">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_ZERO_DISPARITY</h4>
|
|
<pre>public static final int CALIB_ZERO_DISPARITY</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_ZERO_DISPARITY">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CALIB_ZERO_TANGENT_DIST">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CALIB_ZERO_TANGENT_DIST</h4>
|
|
<pre>public static final int CALIB_ZERO_TANGENT_DIST</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CALIB_ZERO_TANGENT_DIST">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CirclesGridFinderParameters_ASYMMETRIC_GRID">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CirclesGridFinderParameters_ASYMMETRIC_GRID</h4>
|
|
<pre>public static final int CirclesGridFinderParameters_ASYMMETRIC_GRID</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CirclesGridFinderParameters_ASYMMETRIC_GRID">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CirclesGridFinderParameters_SYMMETRIC_GRID">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CirclesGridFinderParameters_SYMMETRIC_GRID</h4>
|
|
<pre>public static final int CirclesGridFinderParameters_SYMMETRIC_GRID</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CirclesGridFinderParameters_SYMMETRIC_GRID">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CV_DLS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CV_DLS</h4>
|
|
<pre>public static final int CV_DLS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CV_DLS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CV_EPNP">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CV_EPNP</h4>
|
|
<pre>public static final int CV_EPNP</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CV_EPNP">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CV_ITERATIVE">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CV_ITERATIVE</h4>
|
|
<pre>public static final int CV_ITERATIVE</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CV_ITERATIVE">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CV_P3P">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CV_P3P</h4>
|
|
<pre>public static final int CV_P3P</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CV_P3P">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CvLevMarq_CALC_J">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CvLevMarq_CALC_J</h4>
|
|
<pre>public static final int CvLevMarq_CALC_J</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CvLevMarq_CALC_J">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CvLevMarq_CHECK_ERR">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CvLevMarq_CHECK_ERR</h4>
|
|
<pre>public static final int CvLevMarq_CHECK_ERR</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CvLevMarq_CHECK_ERR">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CvLevMarq_DONE">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CvLevMarq_DONE</h4>
|
|
<pre>public static final int CvLevMarq_DONE</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CvLevMarq_DONE">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="CvLevMarq_STARTED">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>CvLevMarq_STARTED</h4>
|
|
<pre>public static final int CvLevMarq_STARTED</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.CvLevMarq_STARTED">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_CHECK_COND">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_CHECK_COND</h4>
|
|
<pre>public static final int fisheye_CALIB_CHECK_COND</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_CHECK_COND">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_FIX_FOCAL_LENGTH">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_FIX_FOCAL_LENGTH</h4>
|
|
<pre>public static final int fisheye_CALIB_FIX_FOCAL_LENGTH</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_FIX_FOCAL_LENGTH">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_FIX_INTRINSIC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_FIX_INTRINSIC</h4>
|
|
<pre>public static final int fisheye_CALIB_FIX_INTRINSIC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_FIX_INTRINSIC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_FIX_K1">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_FIX_K1</h4>
|
|
<pre>public static final int fisheye_CALIB_FIX_K1</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_FIX_K1">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_FIX_K2">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_FIX_K2</h4>
|
|
<pre>public static final int fisheye_CALIB_FIX_K2</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_FIX_K2">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_FIX_K3">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_FIX_K3</h4>
|
|
<pre>public static final int fisheye_CALIB_FIX_K3</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_FIX_K3">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_FIX_K4">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_FIX_K4</h4>
|
|
<pre>public static final int fisheye_CALIB_FIX_K4</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_FIX_K4">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_FIX_PRINCIPAL_POINT">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_FIX_PRINCIPAL_POINT</h4>
|
|
<pre>public static final int fisheye_CALIB_FIX_PRINCIPAL_POINT</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_FIX_PRINCIPAL_POINT">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_FIX_SKEW">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_FIX_SKEW</h4>
|
|
<pre>public static final int fisheye_CALIB_FIX_SKEW</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_FIX_SKEW">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_RECOMPUTE_EXTRINSIC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_RECOMPUTE_EXTRINSIC</h4>
|
|
<pre>public static final int fisheye_CALIB_RECOMPUTE_EXTRINSIC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_RECOMPUTE_EXTRINSIC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_USE_INTRINSIC_GUESS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_USE_INTRINSIC_GUESS</h4>
|
|
<pre>public static final int fisheye_CALIB_USE_INTRINSIC_GUESS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_USE_INTRINSIC_GUESS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_CALIB_ZERO_DISPARITY">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_CALIB_ZERO_DISPARITY</h4>
|
|
<pre>public static final int fisheye_CALIB_ZERO_DISPARITY</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.fisheye_CALIB_ZERO_DISPARITY">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="FM_7POINT">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>FM_7POINT</h4>
|
|
<pre>public static final int FM_7POINT</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.FM_7POINT">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="FM_8POINT">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>FM_8POINT</h4>
|
|
<pre>public static final int FM_8POINT</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.FM_8POINT">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="FM_LMEDS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>FM_LMEDS</h4>
|
|
<pre>public static final int FM_LMEDS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.FM_LMEDS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="FM_RANSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>FM_RANSAC</h4>
|
|
<pre>public static final int FM_RANSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.FM_RANSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="LMEDS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>LMEDS</h4>
|
|
<pre>public static final int LMEDS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.LMEDS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="LOCAL_OPTIM_GC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>LOCAL_OPTIM_GC</h4>
|
|
<pre>public static final int LOCAL_OPTIM_GC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.LOCAL_OPTIM_GC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="LOCAL_OPTIM_INNER_AND_ITER_LO">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>LOCAL_OPTIM_INNER_AND_ITER_LO</h4>
|
|
<pre>public static final int LOCAL_OPTIM_INNER_AND_ITER_LO</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.LOCAL_OPTIM_INNER_AND_ITER_LO">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="LOCAL_OPTIM_INNER_LO">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>LOCAL_OPTIM_INNER_LO</h4>
|
|
<pre>public static final int LOCAL_OPTIM_INNER_LO</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.LOCAL_OPTIM_INNER_LO">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="LOCAL_OPTIM_NULL">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>LOCAL_OPTIM_NULL</h4>
|
|
<pre>public static final int LOCAL_OPTIM_NULL</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.LOCAL_OPTIM_NULL">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="LOCAL_OPTIM_SIGMA">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>LOCAL_OPTIM_SIGMA</h4>
|
|
<pre>public static final int LOCAL_OPTIM_SIGMA</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.LOCAL_OPTIM_SIGMA">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="NEIGH_FLANN_KNN">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>NEIGH_FLANN_KNN</h4>
|
|
<pre>public static final int NEIGH_FLANN_KNN</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.NEIGH_FLANN_KNN">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="NEIGH_FLANN_RADIUS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>NEIGH_FLANN_RADIUS</h4>
|
|
<pre>public static final int NEIGH_FLANN_RADIUS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.NEIGH_FLANN_RADIUS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="NEIGH_GRID">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>NEIGH_GRID</h4>
|
|
<pre>public static final int NEIGH_GRID</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.NEIGH_GRID">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="PROJ_SPHERICAL_EQRECT">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>PROJ_SPHERICAL_EQRECT</h4>
|
|
<pre>public static final int PROJ_SPHERICAL_EQRECT</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.PROJ_SPHERICAL_EQRECT">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="PROJ_SPHERICAL_ORTHO">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>PROJ_SPHERICAL_ORTHO</h4>
|
|
<pre>public static final int PROJ_SPHERICAL_ORTHO</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.PROJ_SPHERICAL_ORTHO">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="RANSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>RANSAC</h4>
|
|
<pre>public static final int RANSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.RANSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="RHO">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>RHO</h4>
|
|
<pre>public static final int RHO</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.RHO">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SAMPLING_NAPSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SAMPLING_NAPSAC</h4>
|
|
<pre>public static final int SAMPLING_NAPSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SAMPLING_NAPSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SAMPLING_PROGRESSIVE_NAPSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SAMPLING_PROGRESSIVE_NAPSAC</h4>
|
|
<pre>public static final int SAMPLING_PROGRESSIVE_NAPSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SAMPLING_PROGRESSIVE_NAPSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SAMPLING_PROSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SAMPLING_PROSAC</h4>
|
|
<pre>public static final int SAMPLING_PROSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SAMPLING_PROSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SAMPLING_UNIFORM">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SAMPLING_UNIFORM</h4>
|
|
<pre>public static final int SAMPLING_UNIFORM</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SAMPLING_UNIFORM">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SCORE_METHOD_LMEDS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SCORE_METHOD_LMEDS</h4>
|
|
<pre>public static final int SCORE_METHOD_LMEDS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SCORE_METHOD_LMEDS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SCORE_METHOD_MAGSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SCORE_METHOD_MAGSAC</h4>
|
|
<pre>public static final int SCORE_METHOD_MAGSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SCORE_METHOD_MAGSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SCORE_METHOD_MSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SCORE_METHOD_MSAC</h4>
|
|
<pre>public static final int SCORE_METHOD_MSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SCORE_METHOD_MSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SCORE_METHOD_RANSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SCORE_METHOD_RANSAC</h4>
|
|
<pre>public static final int SCORE_METHOD_RANSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SCORE_METHOD_RANSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_AP3P">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_AP3P</h4>
|
|
<pre>public static final int SOLVEPNP_AP3P</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_AP3P">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_DLS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_DLS</h4>
|
|
<pre>public static final int SOLVEPNP_DLS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_DLS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_EPNP">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_EPNP</h4>
|
|
<pre>public static final int SOLVEPNP_EPNP</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_EPNP">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_IPPE">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_IPPE</h4>
|
|
<pre>public static final int SOLVEPNP_IPPE</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_IPPE">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_IPPE_SQUARE">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_IPPE_SQUARE</h4>
|
|
<pre>public static final int SOLVEPNP_IPPE_SQUARE</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_IPPE_SQUARE">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_ITERATIVE">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_ITERATIVE</h4>
|
|
<pre>public static final int SOLVEPNP_ITERATIVE</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_ITERATIVE">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_MAX_COUNT">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_MAX_COUNT</h4>
|
|
<pre>public static final int SOLVEPNP_MAX_COUNT</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_MAX_COUNT">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_P3P">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_P3P</h4>
|
|
<pre>public static final int SOLVEPNP_P3P</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_P3P">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_SQPNP">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_SQPNP</h4>
|
|
<pre>public static final int SOLVEPNP_SQPNP</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_SQPNP">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="SOLVEPNP_UPNP">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>SOLVEPNP_UPNP</h4>
|
|
<pre>public static final int SOLVEPNP_UPNP</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.SOLVEPNP_UPNP">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="USAC_ACCURATE">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>USAC_ACCURATE</h4>
|
|
<pre>public static final int USAC_ACCURATE</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.USAC_ACCURATE">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="USAC_DEFAULT">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>USAC_DEFAULT</h4>
|
|
<pre>public static final int USAC_DEFAULT</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.USAC_DEFAULT">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="USAC_FAST">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>USAC_FAST</h4>
|
|
<pre>public static final int USAC_FAST</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.USAC_FAST">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="USAC_FM_8PTS">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>USAC_FM_8PTS</h4>
|
|
<pre>public static final int USAC_FM_8PTS</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.USAC_FM_8PTS">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="USAC_MAGSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>USAC_MAGSAC</h4>
|
|
<pre>public static final int USAC_MAGSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.USAC_MAGSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="USAC_PARALLEL">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>USAC_PARALLEL</h4>
|
|
<pre>public static final int USAC_PARALLEL</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.USAC_PARALLEL">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="USAC_PROSAC">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockListLast">
|
|
<li class="blockList">
|
|
<h4>USAC_PROSAC</h4>
|
|
<pre>public static final int USAC_PROSAC</pre>
|
|
<dl>
|
|
<dt><span class="seeLabel">See Also:</span></dt>
|
|
<dd><a href="../../../constant-values.html#org.opencv.calib3d.Calib3d.USAC_PROSAC">Constant Field Values</a></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
|
<ul class="blockList">
|
|
<li class="blockList"><a name="constructor.detail">
|
|
<!-- -->
|
|
</a>
|
|
<h3>Constructor Detail</h3>
|
|
<a name="Calib3d--">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockListLast">
|
|
<li class="blockList">
|
|
<h4>Calib3d</h4>
|
|
<pre>public Calib3d()</pre>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<!-- ============ METHOD DETAIL ========== -->
|
|
<ul class="blockList">
|
|
<li class="blockList"><a name="method.detail">
|
|
<!-- -->
|
|
</a>
|
|
<h3>Method Detail</h3>
|
|
<a name="calibrateCamera-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCamera</h4>
|
|
<pre>public static double calibrateCamera(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCamera-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCamera</h4>
|
|
<pre>public static double calibrateCamera(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCamera-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCamera</h4>
|
|
<pre>public static double calibrateCamera(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCameraExtended-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCameraExtended</h4>
|
|
<pre>public static double calibrateCameraExtended(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors)</pre>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration
|
|
pattern.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - In the new interface it is a vector of vectors of calibration pattern points in
|
|
the calibration pattern coordinate space (e.g. std::vector<std::vector<cv::Vec3f>>). The outer
|
|
vector contains as many elements as the number of pattern views. If the same calibration pattern
|
|
is shown in each view and it is fully visible, all the vectors will be the same. Although, it is
|
|
possible to use partially occluded patterns or even different patterns in different views. Then,
|
|
the vectors will be different. Although the points are 3D, they all lie in the calibration pattern's
|
|
XY coordinate plane (thus 0 in the Z-coordinate), if the used calibration pattern is a planar rig.
|
|
In the old interface all the vectors of object points from different views are concatenated
|
|
together.</dd>
|
|
<dd><code>imagePoints</code> - In the new interface it is a vector of vectors of the projections of calibration
|
|
pattern points (e.g. std::vector<std::vector<cv::Vec2f>>). imagePoints.size() and
|
|
objectPoints.size(), and imagePoints[i].size() and objectPoints[i].size() for each i, must be equal,
|
|
respectively. In the old interface all the vectors of object points from different views are
|
|
concatenated together.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize the camera intrinsic matrix.</dd>
|
|
<dd><code>cameraMatrix</code> - Input/output 3x3 floating-point camera intrinsic matrix
|
|
\(\cameramatrix{A}\) . If REF: CALIB_USE_INTRINSIC_GUESS
|
|
and/or REF: CALIB_FIX_ASPECT_RATIO, REF: CALIB_FIX_PRINCIPAL_POINT or REF: CALIB_FIX_FOCAL_LENGTH
|
|
are specified, some or all of fx, fy, cx, cy must be initialized before calling the function.</dd>
|
|
<dd><code>distCoeffs</code> - Input/output vector of distortion coefficients
|
|
\(\distcoeffs\).</dd>
|
|
<dd><code>rvecs</code> - Output vector of rotation vectors (REF: Rodrigues ) estimated for each pattern view
|
|
(e.g. std::vector<cv::Mat>>). That is, each i-th rotation vector together with the corresponding
|
|
i-th translation vector (see the next output parameter description) brings the calibration pattern
|
|
from the object coordinate space (in which object points are specified) to the camera coordinate
|
|
space. In more technical terms, the tuple of the i-th rotation and translation vector performs
|
|
a change of basis from object coordinate space to camera coordinate space. Due to its duality, this
|
|
tuple is equivalent to the position of the calibration pattern with respect to the camera coordinate
|
|
space.</dd>
|
|
<dd><code>tvecs</code> - Output vector of translation vectors estimated for each pattern view, see parameter
|
|
describtion above.</dd>
|
|
<dd><code>stdDeviationsIntrinsics</code> - Output vector of standard deviations estimated for intrinsic
|
|
parameters. Order of deviations values:
|
|
\((f_x, f_y, c_x, c_y, k_1, k_2, p_1, p_2, k_3, k_4, k_5, k_6 , s_1, s_2, s_3,
|
|
s_4, \tau_x, \tau_y)\) If one of parameters is not estimated, it's deviation is equals to zero.</dd>
|
|
<dd><code>stdDeviationsExtrinsics</code> - Output vector of standard deviations estimated for extrinsic
|
|
parameters. Order of deviations values: \((R_0, T_0, \dotsc , R_{M - 1}, T_{M - 1})\) where M is
|
|
the number of pattern views. \(R_i, T_i\) are concatenated 1x3 vectors.</dd>
|
|
<dd><code>perViewErrors</code> - Output vector of the RMS re-projection error estimated for each pattern view.
|
|
<ul>
|
|
<li>
|
|
REF: CALIB_USE_INTRINSIC_GUESS cameraMatrix contains valid initial values of
|
|
fx, fy, cx, cy that are optimized further. Otherwise, (cx, cy) is initially set to the image
|
|
center ( imageSize is used), and focal distances are computed in a least-squares fashion.
|
|
Note, that if intrinsic parameters are known, there is no need to use this function just to
|
|
estimate extrinsic parameters. Use REF: solvePnP instead.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_PRINCIPAL_POINT The principal point is not changed during the global
|
|
optimization. It stays at the center or at a different location specified when
|
|
REF: CALIB_USE_INTRINSIC_GUESS is set too.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_ASPECT_RATIO The functions consider only fy as a free parameter. The
|
|
ratio fx/fy stays the same as in the input cameraMatrix . When
|
|
REF: CALIB_USE_INTRINSIC_GUESS is not set, the actual input values of fx and fy are
|
|
ignored, only their ratio is computed and used further.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_ZERO_TANGENT_DIST Tangential distortion coefficients \((p_1, p_2)\) are set
|
|
to zeros and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_FOCAL_LENGTH The focal length is not changed during the global optimization if
|
|
REF: CALIB_USE_INTRINSIC_GUESS is set.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_K1,..., REF: CALIB_FIX_K6 The corresponding radial distortion
|
|
coefficient is not changed during the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is
|
|
set, the coefficient from the supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_RATIONAL_MODEL Coefficients k4, k5, and k6 are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the rational model and return 8 coefficients or more.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_THIN_PRISM_MODEL Coefficients s1, s2, s3 and s4 are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the thin prism model and return 12 coefficients or more.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_S1_S2_S3_S4 The thin prism distortion coefficients are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_TILTED_MODEL Coefficients tauX and tauY are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the tilted sensor model and return 14 coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_TAUX_TAUY The coefficients of the tilted sensor model are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>the overall RMS re-projection error.
|
|
|
|
The function estimates the intrinsic camera parameters and extrinsic parameters for each of the
|
|
views. The algorithm is based on CITE: Zhang2000 and CITE: BouguetMCT . The coordinates of 3D object
|
|
points and their corresponding 2D projections in each view must be specified. That may be achieved
|
|
by using an object with known geometry and easily detectable feature points. Such an object is
|
|
called a calibration rig or calibration pattern, and OpenCV has built-in support for a chessboard as
|
|
a calibration rig (see REF: findChessboardCorners). Currently, initialization of intrinsic
|
|
parameters (when REF: CALIB_USE_INTRINSIC_GUESS is not set) is only implemented for planar calibration
|
|
patterns (where Z-coordinates of the object points must be all zeros). 3D calibration rigs can also
|
|
be used as long as initial cameraMatrix is provided.
|
|
|
|
The algorithm performs the following steps:
|
|
|
|
<ul>
|
|
<li>
|
|
Compute the initial intrinsic parameters (the option only available for planar calibration
|
|
patterns) or read them from the input parameters. The distortion coefficients are all set to
|
|
zeros initially unless some of CALIB_FIX_K? are specified.
|
|
</li>
|
|
</ul>
|
|
|
|
<ul>
|
|
<li>
|
|
Estimate the initial camera pose as if the intrinsic parameters have been already known. This is
|
|
done using REF: solvePnP .
|
|
</li>
|
|
</ul>
|
|
|
|
<ul>
|
|
<li>
|
|
Run the global Levenberg-Marquardt optimization algorithm to minimize the reprojection error,
|
|
that is, the total sum of squared distances between the observed feature points imagePoints and
|
|
the projected (using the current estimates for camera parameters and the poses) object points
|
|
objectPoints. See REF: projectPoints for details.
|
|
</li>
|
|
</ul>
|
|
|
|
<b>Note:</b>
|
|
If you use a non-square (i.e. non-N-by-N) grid and REF: findChessboardCorners for calibration,
|
|
and REF: calibrateCamera returns bad values (zero distortion coefficients, \(c_x\) and
|
|
\(c_y\) very far from the image center, and/or large differences between \(f_x\) and
|
|
\(f_y\) (ratios of 10:1 or more)), then you are probably using patternSize=cvSize(rows,cols)
|
|
instead of using patternSize=cvSize(cols,rows) in REF: findChessboardCorners.
|
|
|
|
SEE:
|
|
calibrateCameraRO, findChessboardCorners, solvePnP, initCameraMatrix2D, stereoCalibrate,
|
|
undistort</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCameraExtended-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCameraExtended</h4>
|
|
<pre>public static double calibrateCameraExtended(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags)</pre>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration
|
|
pattern.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - In the new interface it is a vector of vectors of calibration pattern points in
|
|
the calibration pattern coordinate space (e.g. std::vector<std::vector<cv::Vec3f>>). The outer
|
|
vector contains as many elements as the number of pattern views. If the same calibration pattern
|
|
is shown in each view and it is fully visible, all the vectors will be the same. Although, it is
|
|
possible to use partially occluded patterns or even different patterns in different views. Then,
|
|
the vectors will be different. Although the points are 3D, they all lie in the calibration pattern's
|
|
XY coordinate plane (thus 0 in the Z-coordinate), if the used calibration pattern is a planar rig.
|
|
In the old interface all the vectors of object points from different views are concatenated
|
|
together.</dd>
|
|
<dd><code>imagePoints</code> - In the new interface it is a vector of vectors of the projections of calibration
|
|
pattern points (e.g. std::vector<std::vector<cv::Vec2f>>). imagePoints.size() and
|
|
objectPoints.size(), and imagePoints[i].size() and objectPoints[i].size() for each i, must be equal,
|
|
respectively. In the old interface all the vectors of object points from different views are
|
|
concatenated together.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize the camera intrinsic matrix.</dd>
|
|
<dd><code>cameraMatrix</code> - Input/output 3x3 floating-point camera intrinsic matrix
|
|
\(\cameramatrix{A}\) . If REF: CALIB_USE_INTRINSIC_GUESS
|
|
and/or REF: CALIB_FIX_ASPECT_RATIO, REF: CALIB_FIX_PRINCIPAL_POINT or REF: CALIB_FIX_FOCAL_LENGTH
|
|
are specified, some or all of fx, fy, cx, cy must be initialized before calling the function.</dd>
|
|
<dd><code>distCoeffs</code> - Input/output vector of distortion coefficients
|
|
\(\distcoeffs\).</dd>
|
|
<dd><code>rvecs</code> - Output vector of rotation vectors (REF: Rodrigues ) estimated for each pattern view
|
|
(e.g. std::vector<cv::Mat>>). That is, each i-th rotation vector together with the corresponding
|
|
i-th translation vector (see the next output parameter description) brings the calibration pattern
|
|
from the object coordinate space (in which object points are specified) to the camera coordinate
|
|
space. In more technical terms, the tuple of the i-th rotation and translation vector performs
|
|
a change of basis from object coordinate space to camera coordinate space. Due to its duality, this
|
|
tuple is equivalent to the position of the calibration pattern with respect to the camera coordinate
|
|
space.</dd>
|
|
<dd><code>tvecs</code> - Output vector of translation vectors estimated for each pattern view, see parameter
|
|
describtion above.</dd>
|
|
<dd><code>stdDeviationsIntrinsics</code> - Output vector of standard deviations estimated for intrinsic
|
|
parameters. Order of deviations values:
|
|
\((f_x, f_y, c_x, c_y, k_1, k_2, p_1, p_2, k_3, k_4, k_5, k_6 , s_1, s_2, s_3,
|
|
s_4, \tau_x, \tau_y)\) If one of parameters is not estimated, it's deviation is equals to zero.</dd>
|
|
<dd><code>stdDeviationsExtrinsics</code> - Output vector of standard deviations estimated for extrinsic
|
|
parameters. Order of deviations values: \((R_0, T_0, \dotsc , R_{M - 1}, T_{M - 1})\) where M is
|
|
the number of pattern views. \(R_i, T_i\) are concatenated 1x3 vectors.</dd>
|
|
<dd><code>perViewErrors</code> - Output vector of the RMS re-projection error estimated for each pattern view.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: CALIB_USE_INTRINSIC_GUESS cameraMatrix contains valid initial values of
|
|
fx, fy, cx, cy that are optimized further. Otherwise, (cx, cy) is initially set to the image
|
|
center ( imageSize is used), and focal distances are computed in a least-squares fashion.
|
|
Note, that if intrinsic parameters are known, there is no need to use this function just to
|
|
estimate extrinsic parameters. Use REF: solvePnP instead.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_PRINCIPAL_POINT The principal point is not changed during the global
|
|
optimization. It stays at the center or at a different location specified when
|
|
REF: CALIB_USE_INTRINSIC_GUESS is set too.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_ASPECT_RATIO The functions consider only fy as a free parameter. The
|
|
ratio fx/fy stays the same as in the input cameraMatrix . When
|
|
REF: CALIB_USE_INTRINSIC_GUESS is not set, the actual input values of fx and fy are
|
|
ignored, only their ratio is computed and used further.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_ZERO_TANGENT_DIST Tangential distortion coefficients \((p_1, p_2)\) are set
|
|
to zeros and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_FOCAL_LENGTH The focal length is not changed during the global optimization if
|
|
REF: CALIB_USE_INTRINSIC_GUESS is set.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_K1,..., REF: CALIB_FIX_K6 The corresponding radial distortion
|
|
coefficient is not changed during the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is
|
|
set, the coefficient from the supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_RATIONAL_MODEL Coefficients k4, k5, and k6 are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the rational model and return 8 coefficients or more.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_THIN_PRISM_MODEL Coefficients s1, s2, s3 and s4 are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the thin prism model and return 12 coefficients or more.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_S1_S2_S3_S4 The thin prism distortion coefficients are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_TILTED_MODEL Coefficients tauX and tauY are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the tilted sensor model and return 14 coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_TAUX_TAUY The coefficients of the tilted sensor model are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>the overall RMS re-projection error.
|
|
|
|
The function estimates the intrinsic camera parameters and extrinsic parameters for each of the
|
|
views. The algorithm is based on CITE: Zhang2000 and CITE: BouguetMCT . The coordinates of 3D object
|
|
points and their corresponding 2D projections in each view must be specified. That may be achieved
|
|
by using an object with known geometry and easily detectable feature points. Such an object is
|
|
called a calibration rig or calibration pattern, and OpenCV has built-in support for a chessboard as
|
|
a calibration rig (see REF: findChessboardCorners). Currently, initialization of intrinsic
|
|
parameters (when REF: CALIB_USE_INTRINSIC_GUESS is not set) is only implemented for planar calibration
|
|
patterns (where Z-coordinates of the object points must be all zeros). 3D calibration rigs can also
|
|
be used as long as initial cameraMatrix is provided.
|
|
|
|
The algorithm performs the following steps:
|
|
|
|
<ul>
|
|
<li>
|
|
Compute the initial intrinsic parameters (the option only available for planar calibration
|
|
patterns) or read them from the input parameters. The distortion coefficients are all set to
|
|
zeros initially unless some of CALIB_FIX_K? are specified.
|
|
</li>
|
|
</ul>
|
|
|
|
<ul>
|
|
<li>
|
|
Estimate the initial camera pose as if the intrinsic parameters have been already known. This is
|
|
done using REF: solvePnP .
|
|
</li>
|
|
</ul>
|
|
|
|
<ul>
|
|
<li>
|
|
Run the global Levenberg-Marquardt optimization algorithm to minimize the reprojection error,
|
|
that is, the total sum of squared distances between the observed feature points imagePoints and
|
|
the projected (using the current estimates for camera parameters and the poses) object points
|
|
objectPoints. See REF: projectPoints for details.
|
|
</li>
|
|
</ul>
|
|
|
|
<b>Note:</b>
|
|
If you use a non-square (i.e. non-N-by-N) grid and REF: findChessboardCorners for calibration,
|
|
and REF: calibrateCamera returns bad values (zero distortion coefficients, \(c_x\) and
|
|
\(c_y\) very far from the image center, and/or large differences between \(f_x\) and
|
|
\(f_y\) (ratios of 10:1 or more)), then you are probably using patternSize=cvSize(rows,cols)
|
|
instead of using patternSize=cvSize(cols,rows) in REF: findChessboardCorners.
|
|
|
|
SEE:
|
|
calibrateCameraRO, findChessboardCorners, solvePnP, initCameraMatrix2D, stereoCalibrate,
|
|
undistort</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCameraExtended-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCameraExtended</h4>
|
|
<pre>public static double calibrateCameraExtended(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration
|
|
pattern.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - In the new interface it is a vector of vectors of calibration pattern points in
|
|
the calibration pattern coordinate space (e.g. std::vector<std::vector<cv::Vec3f>>). The outer
|
|
vector contains as many elements as the number of pattern views. If the same calibration pattern
|
|
is shown in each view and it is fully visible, all the vectors will be the same. Although, it is
|
|
possible to use partially occluded patterns or even different patterns in different views. Then,
|
|
the vectors will be different. Although the points are 3D, they all lie in the calibration pattern's
|
|
XY coordinate plane (thus 0 in the Z-coordinate), if the used calibration pattern is a planar rig.
|
|
In the old interface all the vectors of object points from different views are concatenated
|
|
together.</dd>
|
|
<dd><code>imagePoints</code> - In the new interface it is a vector of vectors of the projections of calibration
|
|
pattern points (e.g. std::vector<std::vector<cv::Vec2f>>). imagePoints.size() and
|
|
objectPoints.size(), and imagePoints[i].size() and objectPoints[i].size() for each i, must be equal,
|
|
respectively. In the old interface all the vectors of object points from different views are
|
|
concatenated together.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize the camera intrinsic matrix.</dd>
|
|
<dd><code>cameraMatrix</code> - Input/output 3x3 floating-point camera intrinsic matrix
|
|
\(\cameramatrix{A}\) . If REF: CALIB_USE_INTRINSIC_GUESS
|
|
and/or REF: CALIB_FIX_ASPECT_RATIO, REF: CALIB_FIX_PRINCIPAL_POINT or REF: CALIB_FIX_FOCAL_LENGTH
|
|
are specified, some or all of fx, fy, cx, cy must be initialized before calling the function.</dd>
|
|
<dd><code>distCoeffs</code> - Input/output vector of distortion coefficients
|
|
\(\distcoeffs\).</dd>
|
|
<dd><code>rvecs</code> - Output vector of rotation vectors (REF: Rodrigues ) estimated for each pattern view
|
|
(e.g. std::vector<cv::Mat>>). That is, each i-th rotation vector together with the corresponding
|
|
i-th translation vector (see the next output parameter description) brings the calibration pattern
|
|
from the object coordinate space (in which object points are specified) to the camera coordinate
|
|
space. In more technical terms, the tuple of the i-th rotation and translation vector performs
|
|
a change of basis from object coordinate space to camera coordinate space. Due to its duality, this
|
|
tuple is equivalent to the position of the calibration pattern with respect to the camera coordinate
|
|
space.</dd>
|
|
<dd><code>tvecs</code> - Output vector of translation vectors estimated for each pattern view, see parameter
|
|
describtion above.</dd>
|
|
<dd><code>stdDeviationsIntrinsics</code> - Output vector of standard deviations estimated for intrinsic
|
|
parameters. Order of deviations values:
|
|
\((f_x, f_y, c_x, c_y, k_1, k_2, p_1, p_2, k_3, k_4, k_5, k_6 , s_1, s_2, s_3,
|
|
s_4, \tau_x, \tau_y)\) If one of parameters is not estimated, it's deviation is equals to zero.</dd>
|
|
<dd><code>stdDeviationsExtrinsics</code> - Output vector of standard deviations estimated for extrinsic
|
|
parameters. Order of deviations values: \((R_0, T_0, \dotsc , R_{M - 1}, T_{M - 1})\) where M is
|
|
the number of pattern views. \(R_i, T_i\) are concatenated 1x3 vectors.</dd>
|
|
<dd><code>perViewErrors</code> - Output vector of the RMS re-projection error estimated for each pattern view.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: CALIB_USE_INTRINSIC_GUESS cameraMatrix contains valid initial values of
|
|
fx, fy, cx, cy that are optimized further. Otherwise, (cx, cy) is initially set to the image
|
|
center ( imageSize is used), and focal distances are computed in a least-squares fashion.
|
|
Note, that if intrinsic parameters are known, there is no need to use this function just to
|
|
estimate extrinsic parameters. Use REF: solvePnP instead.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_PRINCIPAL_POINT The principal point is not changed during the global
|
|
optimization. It stays at the center or at a different location specified when
|
|
REF: CALIB_USE_INTRINSIC_GUESS is set too.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_ASPECT_RATIO The functions consider only fy as a free parameter. The
|
|
ratio fx/fy stays the same as in the input cameraMatrix . When
|
|
REF: CALIB_USE_INTRINSIC_GUESS is not set, the actual input values of fx and fy are
|
|
ignored, only their ratio is computed and used further.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_ZERO_TANGENT_DIST Tangential distortion coefficients \((p_1, p_2)\) are set
|
|
to zeros and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_FOCAL_LENGTH The focal length is not changed during the global optimization if
|
|
REF: CALIB_USE_INTRINSIC_GUESS is set.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_K1,..., REF: CALIB_FIX_K6 The corresponding radial distortion
|
|
coefficient is not changed during the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is
|
|
set, the coefficient from the supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_RATIONAL_MODEL Coefficients k4, k5, and k6 are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the rational model and return 8 coefficients or more.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_THIN_PRISM_MODEL Coefficients s1, s2, s3 and s4 are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the thin prism model and return 12 coefficients or more.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_S1_S2_S3_S4 The thin prism distortion coefficients are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_TILTED_MODEL Coefficients tauX and tauY are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the tilted sensor model and return 14 coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_TAUX_TAUY The coefficients of the tilted sensor model are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.</dd>
|
|
<dd><code>criteria</code> - Termination criteria for the iterative optimization algorithm.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>the overall RMS re-projection error.
|
|
|
|
The function estimates the intrinsic camera parameters and extrinsic parameters for each of the
|
|
views. The algorithm is based on CITE: Zhang2000 and CITE: BouguetMCT . The coordinates of 3D object
|
|
points and their corresponding 2D projections in each view must be specified. That may be achieved
|
|
by using an object with known geometry and easily detectable feature points. Such an object is
|
|
called a calibration rig or calibration pattern, and OpenCV has built-in support for a chessboard as
|
|
a calibration rig (see REF: findChessboardCorners). Currently, initialization of intrinsic
|
|
parameters (when REF: CALIB_USE_INTRINSIC_GUESS is not set) is only implemented for planar calibration
|
|
patterns (where Z-coordinates of the object points must be all zeros). 3D calibration rigs can also
|
|
be used as long as initial cameraMatrix is provided.
|
|
|
|
The algorithm performs the following steps:
|
|
|
|
<ul>
|
|
<li>
|
|
Compute the initial intrinsic parameters (the option only available for planar calibration
|
|
patterns) or read them from the input parameters. The distortion coefficients are all set to
|
|
zeros initially unless some of CALIB_FIX_K? are specified.
|
|
</li>
|
|
</ul>
|
|
|
|
<ul>
|
|
<li>
|
|
Estimate the initial camera pose as if the intrinsic parameters have been already known. This is
|
|
done using REF: solvePnP .
|
|
</li>
|
|
</ul>
|
|
|
|
<ul>
|
|
<li>
|
|
Run the global Levenberg-Marquardt optimization algorithm to minimize the reprojection error,
|
|
that is, the total sum of squared distances between the observed feature points imagePoints and
|
|
the projected (using the current estimates for camera parameters and the poses) object points
|
|
objectPoints. See REF: projectPoints for details.
|
|
</li>
|
|
</ul>
|
|
|
|
<b>Note:</b>
|
|
If you use a non-square (i.e. non-N-by-N) grid and REF: findChessboardCorners for calibration,
|
|
and REF: calibrateCamera returns bad values (zero distortion coefficients, \(c_x\) and
|
|
\(c_y\) very far from the image center, and/or large differences between \(f_x\) and
|
|
\(f_y\) (ratios of 10:1 or more)), then you are probably using patternSize=cvSize(rows,cols)
|
|
instead of using patternSize=cvSize(cols,rows) in REF: findChessboardCorners.
|
|
|
|
SEE:
|
|
calibrateCameraRO, findChessboardCorners, solvePnP, initCameraMatrix2D, stereoCalibrate,
|
|
undistort</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCameraRO-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCameraRO</h4>
|
|
<pre>public static double calibrateCameraRO(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCameraRO-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCameraRO</h4>
|
|
<pre>public static double calibrateCameraRO(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
int flags)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCameraRO-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCameraRO</h4>
|
|
<pre>public static double calibrateCameraRO(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCameraROExtended-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCameraROExtended</h4>
|
|
<pre>public static double calibrateCameraROExtended(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors)</pre>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration pattern.
|
|
|
|
This function is an extension of #calibrateCamera with the method of releasing object which was
|
|
proposed in CITE: strobl2011iccv. In many common cases with inaccurate, unmeasured, roughly planar
|
|
targets (calibration plates), this method can dramatically improve the precision of the estimated
|
|
camera parameters. Both the object-releasing method and standard method are supported by this
|
|
function. Use the parameter <b>iFixedPoint</b> for method selection. In the internal implementation,
|
|
#calibrateCamera is a wrapper for this function.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of calibration pattern points in the calibration pattern
|
|
coordinate space. See #calibrateCamera for details. If the method of releasing object to be used,
|
|
the identical calibration board must be used in each view and it must be fully visible, and all
|
|
objectPoints[i] must be the same and all points should be roughly close to a plane. <b>The calibration
|
|
target has to be rigid, or at least static if the camera (rather than the calibration target) is
|
|
shifted for grabbing images.</b></dd>
|
|
<dd><code>imagePoints</code> - Vector of vectors of the projections of calibration pattern points. See
|
|
#calibrateCamera for details.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize the intrinsic camera matrix.</dd>
|
|
<dd><code>iFixedPoint</code> - The index of the 3D object point in objectPoints[0] to be fixed. It also acts as
|
|
a switch for calibration method selection. If object-releasing method to be used, pass in the
|
|
parameter in the range of [1, objectPoints[0].size()-2], otherwise a value out of this range will
|
|
make standard calibration method selected. Usually the top-right corner point of the calibration
|
|
board grid is recommended to be fixed when object-releasing method being utilized. According to
|
|
\cite strobl2011iccv, two other points are also fixed. In this implementation, objectPoints[0].front
|
|
and objectPoints[0].back.z are used. With object-releasing method, accurate rvecs, tvecs and
|
|
newObjPoints are only possible if coordinates of these three fixed points are accurate enough.</dd>
|
|
<dd><code>cameraMatrix</code> - Output 3x3 floating-point camera matrix. See #calibrateCamera for details.</dd>
|
|
<dd><code>distCoeffs</code> - Output vector of distortion coefficients. See #calibrateCamera for details.</dd>
|
|
<dd><code>rvecs</code> - Output vector of rotation vectors estimated for each pattern view. See #calibrateCamera
|
|
for details.</dd>
|
|
<dd><code>tvecs</code> - Output vector of translation vectors estimated for each pattern view.</dd>
|
|
<dd><code>newObjPoints</code> - The updated output vector of calibration pattern points. The coordinates might
|
|
be scaled based on three fixed points. The returned coordinates are accurate only if the above
|
|
mentioned three fixed points are accurate. If not needed, noArray() can be passed in. This parameter
|
|
is ignored with standard calibration method.</dd>
|
|
<dd><code>stdDeviationsIntrinsics</code> - Output vector of standard deviations estimated for intrinsic parameters.
|
|
See #calibrateCamera for details.</dd>
|
|
<dd><code>stdDeviationsExtrinsics</code> - Output vector of standard deviations estimated for extrinsic parameters.
|
|
See #calibrateCamera for details.</dd>
|
|
<dd><code>stdDeviationsObjPoints</code> - Output vector of standard deviations estimated for refined coordinates
|
|
of calibration pattern points. It has the same size and order as objectPoints[0] vector. This
|
|
parameter is ignored with standard calibration method.</dd>
|
|
<dd><code>perViewErrors</code> - Output vector of the RMS re-projection error estimated for each pattern view.
|
|
#calibrateCamera for details. If the method of releasing object is used, the calibration time may
|
|
be much longer. CALIB_USE_QR or CALIB_USE_LU could be used for faster calibration with potentially
|
|
less precise and less stable in some rare cases.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>the overall RMS re-projection error.
|
|
|
|
The function estimates the intrinsic camera parameters and extrinsic parameters for each of the
|
|
views. The algorithm is based on CITE: Zhang2000, CITE: BouguetMCT and CITE: strobl2011iccv. See
|
|
#calibrateCamera for other detailed explanations.
|
|
SEE:
|
|
calibrateCamera, findChessboardCorners, solvePnP, initCameraMatrix2D, stereoCalibrate, undistort</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCameraROExtended-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCameraROExtended</h4>
|
|
<pre>public static double calibrateCameraROExtended(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags)</pre>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration pattern.
|
|
|
|
This function is an extension of #calibrateCamera with the method of releasing object which was
|
|
proposed in CITE: strobl2011iccv. In many common cases with inaccurate, unmeasured, roughly planar
|
|
targets (calibration plates), this method can dramatically improve the precision of the estimated
|
|
camera parameters. Both the object-releasing method and standard method are supported by this
|
|
function. Use the parameter <b>iFixedPoint</b> for method selection. In the internal implementation,
|
|
#calibrateCamera is a wrapper for this function.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of calibration pattern points in the calibration pattern
|
|
coordinate space. See #calibrateCamera for details. If the method of releasing object to be used,
|
|
the identical calibration board must be used in each view and it must be fully visible, and all
|
|
objectPoints[i] must be the same and all points should be roughly close to a plane. <b>The calibration
|
|
target has to be rigid, or at least static if the camera (rather than the calibration target) is
|
|
shifted for grabbing images.</b></dd>
|
|
<dd><code>imagePoints</code> - Vector of vectors of the projections of calibration pattern points. See
|
|
#calibrateCamera for details.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize the intrinsic camera matrix.</dd>
|
|
<dd><code>iFixedPoint</code> - The index of the 3D object point in objectPoints[0] to be fixed. It also acts as
|
|
a switch for calibration method selection. If object-releasing method to be used, pass in the
|
|
parameter in the range of [1, objectPoints[0].size()-2], otherwise a value out of this range will
|
|
make standard calibration method selected. Usually the top-right corner point of the calibration
|
|
board grid is recommended to be fixed when object-releasing method being utilized. According to
|
|
\cite strobl2011iccv, two other points are also fixed. In this implementation, objectPoints[0].front
|
|
and objectPoints[0].back.z are used. With object-releasing method, accurate rvecs, tvecs and
|
|
newObjPoints are only possible if coordinates of these three fixed points are accurate enough.</dd>
|
|
<dd><code>cameraMatrix</code> - Output 3x3 floating-point camera matrix. See #calibrateCamera for details.</dd>
|
|
<dd><code>distCoeffs</code> - Output vector of distortion coefficients. See #calibrateCamera for details.</dd>
|
|
<dd><code>rvecs</code> - Output vector of rotation vectors estimated for each pattern view. See #calibrateCamera
|
|
for details.</dd>
|
|
<dd><code>tvecs</code> - Output vector of translation vectors estimated for each pattern view.</dd>
|
|
<dd><code>newObjPoints</code> - The updated output vector of calibration pattern points. The coordinates might
|
|
be scaled based on three fixed points. The returned coordinates are accurate only if the above
|
|
mentioned three fixed points are accurate. If not needed, noArray() can be passed in. This parameter
|
|
is ignored with standard calibration method.</dd>
|
|
<dd><code>stdDeviationsIntrinsics</code> - Output vector of standard deviations estimated for intrinsic parameters.
|
|
See #calibrateCamera for details.</dd>
|
|
<dd><code>stdDeviationsExtrinsics</code> - Output vector of standard deviations estimated for extrinsic parameters.
|
|
See #calibrateCamera for details.</dd>
|
|
<dd><code>stdDeviationsObjPoints</code> - Output vector of standard deviations estimated for refined coordinates
|
|
of calibration pattern points. It has the same size and order as objectPoints[0] vector. This
|
|
parameter is ignored with standard calibration method.</dd>
|
|
<dd><code>perViewErrors</code> - Output vector of the RMS re-projection error estimated for each pattern view.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of some predefined values. See
|
|
#calibrateCamera for details. If the method of releasing object is used, the calibration time may
|
|
be much longer. CALIB_USE_QR or CALIB_USE_LU could be used for faster calibration with potentially
|
|
less precise and less stable in some rare cases.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>the overall RMS re-projection error.
|
|
|
|
The function estimates the intrinsic camera parameters and extrinsic parameters for each of the
|
|
views. The algorithm is based on CITE: Zhang2000, CITE: BouguetMCT and CITE: strobl2011iccv. See
|
|
#calibrateCamera for other detailed explanations.
|
|
SEE:
|
|
calibrateCamera, findChessboardCorners, solvePnP, initCameraMatrix2D, stereoCalibrate, undistort</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateCameraROExtended-java.util.List-java.util.List-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateCameraROExtended</h4>
|
|
<pre>public static double calibrateCameraROExtended(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
int iFixedPoint,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsIntrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsExtrinsics,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> stdDeviationsObjPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
<div class="block">Finds the camera intrinsic and extrinsic parameters from several views of a calibration pattern.
|
|
|
|
This function is an extension of #calibrateCamera with the method of releasing object which was
|
|
proposed in CITE: strobl2011iccv. In many common cases with inaccurate, unmeasured, roughly planar
|
|
targets (calibration plates), this method can dramatically improve the precision of the estimated
|
|
camera parameters. Both the object-releasing method and standard method are supported by this
|
|
function. Use the parameter <b>iFixedPoint</b> for method selection. In the internal implementation,
|
|
#calibrateCamera is a wrapper for this function.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of calibration pattern points in the calibration pattern
|
|
coordinate space. See #calibrateCamera for details. If the method of releasing object to be used,
|
|
the identical calibration board must be used in each view and it must be fully visible, and all
|
|
objectPoints[i] must be the same and all points should be roughly close to a plane. <b>The calibration
|
|
target has to be rigid, or at least static if the camera (rather than the calibration target) is
|
|
shifted for grabbing images.</b></dd>
|
|
<dd><code>imagePoints</code> - Vector of vectors of the projections of calibration pattern points. See
|
|
#calibrateCamera for details.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize the intrinsic camera matrix.</dd>
|
|
<dd><code>iFixedPoint</code> - The index of the 3D object point in objectPoints[0] to be fixed. It also acts as
|
|
a switch for calibration method selection. If object-releasing method to be used, pass in the
|
|
parameter in the range of [1, objectPoints[0].size()-2], otherwise a value out of this range will
|
|
make standard calibration method selected. Usually the top-right corner point of the calibration
|
|
board grid is recommended to be fixed when object-releasing method being utilized. According to
|
|
\cite strobl2011iccv, two other points are also fixed. In this implementation, objectPoints[0].front
|
|
and objectPoints[0].back.z are used. With object-releasing method, accurate rvecs, tvecs and
|
|
newObjPoints are only possible if coordinates of these three fixed points are accurate enough.</dd>
|
|
<dd><code>cameraMatrix</code> - Output 3x3 floating-point camera matrix. See #calibrateCamera for details.</dd>
|
|
<dd><code>distCoeffs</code> - Output vector of distortion coefficients. See #calibrateCamera for details.</dd>
|
|
<dd><code>rvecs</code> - Output vector of rotation vectors estimated for each pattern view. See #calibrateCamera
|
|
for details.</dd>
|
|
<dd><code>tvecs</code> - Output vector of translation vectors estimated for each pattern view.</dd>
|
|
<dd><code>newObjPoints</code> - The updated output vector of calibration pattern points. The coordinates might
|
|
be scaled based on three fixed points. The returned coordinates are accurate only if the above
|
|
mentioned three fixed points are accurate. If not needed, noArray() can be passed in. This parameter
|
|
is ignored with standard calibration method.</dd>
|
|
<dd><code>stdDeviationsIntrinsics</code> - Output vector of standard deviations estimated for intrinsic parameters.
|
|
See #calibrateCamera for details.</dd>
|
|
<dd><code>stdDeviationsExtrinsics</code> - Output vector of standard deviations estimated for extrinsic parameters.
|
|
See #calibrateCamera for details.</dd>
|
|
<dd><code>stdDeviationsObjPoints</code> - Output vector of standard deviations estimated for refined coordinates
|
|
of calibration pattern points. It has the same size and order as objectPoints[0] vector. This
|
|
parameter is ignored with standard calibration method.</dd>
|
|
<dd><code>perViewErrors</code> - Output vector of the RMS re-projection error estimated for each pattern view.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of some predefined values. See
|
|
#calibrateCamera for details. If the method of releasing object is used, the calibration time may
|
|
be much longer. CALIB_USE_QR or CALIB_USE_LU could be used for faster calibration with potentially
|
|
less precise and less stable in some rare cases.</dd>
|
|
<dd><code>criteria</code> - Termination criteria for the iterative optimization algorithm.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>the overall RMS re-projection error.
|
|
|
|
The function estimates the intrinsic camera parameters and extrinsic parameters for each of the
|
|
views. The algorithm is based on CITE: Zhang2000, CITE: BouguetMCT and CITE: strobl2011iccv. See
|
|
#calibrateCamera for other detailed explanations.
|
|
SEE:
|
|
calibrateCamera, findChessboardCorners, solvePnP, initCameraMatrix2D, stereoCalibrate, undistort</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateHandEye-java.util.List-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateHandEye</h4>
|
|
<pre>public static void calibrateHandEye(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_gripper2base,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_gripper2base,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_target2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_target2cam,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_cam2gripper,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_cam2gripper)</pre>
|
|
<div class="block">Computes Hand-Eye calibration: \(_{}^{g}\textrm{T}_c\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>R_gripper2base</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the gripper frame to the robot base frame (\(_{}^{b}\textrm{T}_g\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the rotation, <code>(3x3)</code> rotation matrices or <code>(3x1)</code> rotation vectors,
|
|
for all the transformations from gripper frame to robot base frame.</dd>
|
|
<dd><code>t_gripper2base</code> - Translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the gripper frame to the robot base frame (\(_{}^{b}\textrm{T}_g\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the <code>(3x1)</code> translation vectors for all the transformations
|
|
from gripper frame to robot base frame.</dd>
|
|
<dd><code>R_target2cam</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the target frame to the camera frame (\(_{}^{c}\textrm{T}_t\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the rotation, <code>(3x3)</code> rotation matrices or <code>(3x1)</code> rotation vectors,
|
|
for all the transformations from calibration target frame to camera frame.</dd>
|
|
<dd><code>t_target2cam</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the target frame to the camera frame (\(_{}^{c}\textrm{T}_t\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the <code>(3x1)</code> translation vectors for all the transformations
|
|
from calibration target frame to camera frame.</dd>
|
|
<dd><code>R_cam2gripper</code> - Estimated <code>(3x3)</code> rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the camera frame to the gripper frame (\(_{}^{g}\textrm{T}_c\)).</dd>
|
|
<dd><code>t_cam2gripper</code> - Estimated <code>(3x1)</code> translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the camera frame to the gripper frame (\(_{}^{g}\textrm{T}_c\)).
|
|
|
|
The function performs the Hand-Eye calibration using various methods. One approach consists in estimating the
|
|
rotation then the translation (separable solutions) and the following methods are implemented:
|
|
<ul>
|
|
<li>
|
|
R. Tsai, R. Lenz A New Technique for Fully Autonomous and Efficient 3D Robotics Hand/EyeCalibration \cite Tsai89
|
|
</li>
|
|
<li>
|
|
F. Park, B. Martin Robot Sensor Calibration: Solving AX = XB on the Euclidean Group \cite Park94
|
|
</li>
|
|
<li>
|
|
R. Horaud, F. Dornaika Hand-Eye Calibration \cite Horaud95
|
|
</li>
|
|
</ul>
|
|
|
|
Another approach consists in estimating simultaneously the rotation and the translation (simultaneous solutions),
|
|
with the following implemented methods:
|
|
<ul>
|
|
<li>
|
|
N. Andreff, R. Horaud, B. Espiau On-line Hand-Eye Calibration \cite Andreff99
|
|
</li>
|
|
<li>
|
|
K. Daniilidis Hand-Eye Calibration Using Dual Quaternions \cite Daniilidis98
|
|
</li>
|
|
</ul>
|
|
|
|
The following picture describes the Hand-Eye calibration problem where the transformation between a camera ("eye")
|
|
mounted on a robot gripper ("hand") has to be estimated. This configuration is called eye-in-hand.
|
|
|
|
The eye-to-hand configuration consists in a static camera observing a calibration pattern mounted on the robot
|
|
end-effector. The transformation from the camera to the robot base frame can then be estimated by inputting
|
|
the suitable transformations to the function, see below.
|
|
|
|

|
|
|
|
The calibration procedure is the following:
|
|
<ul>
|
|
<li>
|
|
a static calibration pattern is used to estimate the transformation between the target frame
|
|
and the camera frame
|
|
</li>
|
|
<li>
|
|
the robot gripper is moved in order to acquire several poses
|
|
</li>
|
|
<li>
|
|
for each pose, the homogeneous transformation between the gripper frame and the robot base frame is recorded using for
|
|
instance the robot kinematics
|
|
\(
|
|
\begin{bmatrix}
|
|
X_b\\
|
|
Y_b\\
|
|
Z_b\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{b}\textrm{R}_g & _{}^{b}\textrm{t}_g \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_g\\
|
|
Y_g\\
|
|
Z_g\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
</li>
|
|
<li>
|
|
for each pose, the homogeneous transformation between the calibration target frame and the camera frame is recorded using
|
|
for instance a pose estimation method (PnP) from 2D-3D point correspondences
|
|
\(
|
|
\begin{bmatrix}
|
|
X_c\\
|
|
Y_c\\
|
|
Z_c\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{c}\textrm{R}_t & _{}^{c}\textrm{t}_t \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_t\\
|
|
Y_t\\
|
|
Z_t\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
</li>
|
|
</ul>
|
|
|
|
The Hand-Eye calibration procedure returns the following homogeneous transformation
|
|
\(
|
|
\begin{bmatrix}
|
|
X_g\\
|
|
Y_g\\
|
|
Z_g\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{g}\textrm{R}_c & _{}^{g}\textrm{t}_c \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_c\\
|
|
Y_c\\
|
|
Z_c\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
This problem is also known as solving the \(\mathbf{A}\mathbf{X}=\mathbf{X}\mathbf{B}\) equation:
|
|
<ul>
|
|
<li>
|
|
for an eye-in-hand configuration
|
|
\(
|
|
\begin{align*}
|
|
^{b}{\textrm{T}_g}^{(1)} \hspace{0.2em} ^{g}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(1)} &=
|
|
\hspace{0.1em} ^{b}{\textrm{T}_g}^{(2)} \hspace{0.2em} ^{g}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(2)} \\
|
|
</li>
|
|
</ul>
|
|
|
|
(^{b}{\textrm{T}_g}^{(2)})^{-1} \hspace{0.2em} ^{b}{\textrm{T}_g}^{(1)} \hspace{0.2em} ^{g}\textrm{T}_c &=
|
|
\hspace{0.1em} ^{g}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(2)} (^{c}{\textrm{T}_t}^{(1)})^{-1} \\
|
|
|
|
\textrm{A}_i \textrm{X} &= \textrm{X} \textrm{B}_i \\
|
|
\end{align*}
|
|
\)
|
|
|
|
<ul>
|
|
<li>
|
|
for an eye-to-hand configuration
|
|
\(
|
|
\begin{align*}
|
|
^{g}{\textrm{T}_b}^{(1)} \hspace{0.2em} ^{b}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(1)} &=
|
|
\hspace{0.1em} ^{g}{\textrm{T}_b}^{(2)} \hspace{0.2em} ^{b}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(2)} \\
|
|
</li>
|
|
</ul>
|
|
|
|
(^{g}{\textrm{T}_b}^{(2)})^{-1} \hspace{0.2em} ^{g}{\textrm{T}_b}^{(1)} \hspace{0.2em} ^{b}\textrm{T}_c &=
|
|
\hspace{0.1em} ^{b}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(2)} (^{c}{\textrm{T}_t}^{(1)})^{-1} \\
|
|
|
|
\textrm{A}_i \textrm{X} &= \textrm{X} \textrm{B}_i \\
|
|
\end{align*}
|
|
\)
|
|
|
|
\note
|
|
Additional information can be found on this [website](http://campar.in.tum.de/Chair/HandEyeCalibration).
|
|
\note
|
|
A minimum of 2 motions with non parallel rotation axes are necessary to determine the hand-eye transformation.
|
|
So at least 3 different poses are required, but it is strongly recommended to use many more poses.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateHandEye-java.util.List-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateHandEye</h4>
|
|
<pre>public static void calibrateHandEye(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_gripper2base,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_gripper2base,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_target2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_target2cam,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_cam2gripper,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_cam2gripper,
|
|
int method)</pre>
|
|
<div class="block">Computes Hand-Eye calibration: \(_{}^{g}\textrm{T}_c\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>R_gripper2base</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the gripper frame to the robot base frame (\(_{}^{b}\textrm{T}_g\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the rotation, <code>(3x3)</code> rotation matrices or <code>(3x1)</code> rotation vectors,
|
|
for all the transformations from gripper frame to robot base frame.</dd>
|
|
<dd><code>t_gripper2base</code> - Translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the gripper frame to the robot base frame (\(_{}^{b}\textrm{T}_g\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the <code>(3x1)</code> translation vectors for all the transformations
|
|
from gripper frame to robot base frame.</dd>
|
|
<dd><code>R_target2cam</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the target frame to the camera frame (\(_{}^{c}\textrm{T}_t\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the rotation, <code>(3x3)</code> rotation matrices or <code>(3x1)</code> rotation vectors,
|
|
for all the transformations from calibration target frame to camera frame.</dd>
|
|
<dd><code>t_target2cam</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the target frame to the camera frame (\(_{}^{c}\textrm{T}_t\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the <code>(3x1)</code> translation vectors for all the transformations
|
|
from calibration target frame to camera frame.</dd>
|
|
<dd><code>R_cam2gripper</code> - Estimated <code>(3x3)</code> rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the camera frame to the gripper frame (\(_{}^{g}\textrm{T}_c\)).</dd>
|
|
<dd><code>t_cam2gripper</code> - Estimated <code>(3x1)</code> translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the camera frame to the gripper frame (\(_{}^{g}\textrm{T}_c\)).</dd>
|
|
<dd><code>method</code> - One of the implemented Hand-Eye calibration method, see cv::HandEyeCalibrationMethod
|
|
|
|
The function performs the Hand-Eye calibration using various methods. One approach consists in estimating the
|
|
rotation then the translation (separable solutions) and the following methods are implemented:
|
|
<ul>
|
|
<li>
|
|
R. Tsai, R. Lenz A New Technique for Fully Autonomous and Efficient 3D Robotics Hand/EyeCalibration \cite Tsai89
|
|
</li>
|
|
<li>
|
|
F. Park, B. Martin Robot Sensor Calibration: Solving AX = XB on the Euclidean Group \cite Park94
|
|
</li>
|
|
<li>
|
|
R. Horaud, F. Dornaika Hand-Eye Calibration \cite Horaud95
|
|
</li>
|
|
</ul>
|
|
|
|
Another approach consists in estimating simultaneously the rotation and the translation (simultaneous solutions),
|
|
with the following implemented methods:
|
|
<ul>
|
|
<li>
|
|
N. Andreff, R. Horaud, B. Espiau On-line Hand-Eye Calibration \cite Andreff99
|
|
</li>
|
|
<li>
|
|
K. Daniilidis Hand-Eye Calibration Using Dual Quaternions \cite Daniilidis98
|
|
</li>
|
|
</ul>
|
|
|
|
The following picture describes the Hand-Eye calibration problem where the transformation between a camera ("eye")
|
|
mounted on a robot gripper ("hand") has to be estimated. This configuration is called eye-in-hand.
|
|
|
|
The eye-to-hand configuration consists in a static camera observing a calibration pattern mounted on the robot
|
|
end-effector. The transformation from the camera to the robot base frame can then be estimated by inputting
|
|
the suitable transformations to the function, see below.
|
|
|
|

|
|
|
|
The calibration procedure is the following:
|
|
<ul>
|
|
<li>
|
|
a static calibration pattern is used to estimate the transformation between the target frame
|
|
and the camera frame
|
|
</li>
|
|
<li>
|
|
the robot gripper is moved in order to acquire several poses
|
|
</li>
|
|
<li>
|
|
for each pose, the homogeneous transformation between the gripper frame and the robot base frame is recorded using for
|
|
instance the robot kinematics
|
|
\(
|
|
\begin{bmatrix}
|
|
X_b\\
|
|
Y_b\\
|
|
Z_b\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{b}\textrm{R}_g & _{}^{b}\textrm{t}_g \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_g\\
|
|
Y_g\\
|
|
Z_g\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
</li>
|
|
<li>
|
|
for each pose, the homogeneous transformation between the calibration target frame and the camera frame is recorded using
|
|
for instance a pose estimation method (PnP) from 2D-3D point correspondences
|
|
\(
|
|
\begin{bmatrix}
|
|
X_c\\
|
|
Y_c\\
|
|
Z_c\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{c}\textrm{R}_t & _{}^{c}\textrm{t}_t \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_t\\
|
|
Y_t\\
|
|
Z_t\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
</li>
|
|
</ul>
|
|
|
|
The Hand-Eye calibration procedure returns the following homogeneous transformation
|
|
\(
|
|
\begin{bmatrix}
|
|
X_g\\
|
|
Y_g\\
|
|
Z_g\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{g}\textrm{R}_c & _{}^{g}\textrm{t}_c \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_c\\
|
|
Y_c\\
|
|
Z_c\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
This problem is also known as solving the \(\mathbf{A}\mathbf{X}=\mathbf{X}\mathbf{B}\) equation:
|
|
<ul>
|
|
<li>
|
|
for an eye-in-hand configuration
|
|
\(
|
|
\begin{align*}
|
|
^{b}{\textrm{T}_g}^{(1)} \hspace{0.2em} ^{g}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(1)} &=
|
|
\hspace{0.1em} ^{b}{\textrm{T}_g}^{(2)} \hspace{0.2em} ^{g}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(2)} \\
|
|
</li>
|
|
</ul>
|
|
|
|
(^{b}{\textrm{T}_g}^{(2)})^{-1} \hspace{0.2em} ^{b}{\textrm{T}_g}^{(1)} \hspace{0.2em} ^{g}\textrm{T}_c &=
|
|
\hspace{0.1em} ^{g}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(2)} (^{c}{\textrm{T}_t}^{(1)})^{-1} \\
|
|
|
|
\textrm{A}_i \textrm{X} &= \textrm{X} \textrm{B}_i \\
|
|
\end{align*}
|
|
\)
|
|
|
|
<ul>
|
|
<li>
|
|
for an eye-to-hand configuration
|
|
\(
|
|
\begin{align*}
|
|
^{g}{\textrm{T}_b}^{(1)} \hspace{0.2em} ^{b}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(1)} &=
|
|
\hspace{0.1em} ^{g}{\textrm{T}_b}^{(2)} \hspace{0.2em} ^{b}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(2)} \\
|
|
</li>
|
|
</ul>
|
|
|
|
(^{g}{\textrm{T}_b}^{(2)})^{-1} \hspace{0.2em} ^{g}{\textrm{T}_b}^{(1)} \hspace{0.2em} ^{b}\textrm{T}_c &=
|
|
\hspace{0.1em} ^{b}\textrm{T}_c \hspace{0.2em} ^{c}{\textrm{T}_t}^{(2)} (^{c}{\textrm{T}_t}^{(1)})^{-1} \\
|
|
|
|
\textrm{A}_i \textrm{X} &= \textrm{X} \textrm{B}_i \\
|
|
\end{align*}
|
|
\)
|
|
|
|
\note
|
|
Additional information can be found on this [website](http://campar.in.tum.de/Chair/HandEyeCalibration).
|
|
\note
|
|
A minimum of 2 motions with non parallel rotation axes are necessary to determine the hand-eye transformation.
|
|
So at least 3 different poses are required, but it is strongly recommended to use many more poses.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateRobotWorldHandEye-java.util.List-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateRobotWorldHandEye</h4>
|
|
<pre>public static void calibrateRobotWorldHandEye(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_world2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_world2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_base2gripper,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_base2gripper,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_base2world,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_base2world,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_gripper2cam,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_gripper2cam)</pre>
|
|
<div class="block">Computes Robot-World/Hand-Eye calibration: \(_{}^{w}\textrm{T}_b\) and \(_{}^{c}\textrm{T}_g\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>R_world2cam</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the world frame to the camera frame (\(_{}^{c}\textrm{T}_w\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the rotation, <code>(3x3)</code> rotation matrices or <code>(3x1)</code> rotation vectors,
|
|
for all the transformations from world frame to the camera frame.</dd>
|
|
<dd><code>t_world2cam</code> - Translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the world frame to the camera frame (\(_{}^{c}\textrm{T}_w\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the <code>(3x1)</code> translation vectors for all the transformations
|
|
from world frame to the camera frame.</dd>
|
|
<dd><code>R_base2gripper</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the robot base frame to the gripper frame (\(_{}^{g}\textrm{T}_b\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the rotation, <code>(3x3)</code> rotation matrices or <code>(3x1)</code> rotation vectors,
|
|
for all the transformations from robot base frame to the gripper frame.</dd>
|
|
<dd><code>t_base2gripper</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the robot base frame to the gripper frame (\(_{}^{g}\textrm{T}_b\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the <code>(3x1)</code> translation vectors for all the transformations
|
|
from robot base frame to the gripper frame.</dd>
|
|
<dd><code>R_base2world</code> - Estimated <code>(3x3)</code> rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the robot base frame to the world frame (\(_{}^{w}\textrm{T}_b\)).</dd>
|
|
<dd><code>t_base2world</code> - Estimated <code>(3x1)</code> translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the robot base frame to the world frame (\(_{}^{w}\textrm{T}_b\)).</dd>
|
|
<dd><code>R_gripper2cam</code> - Estimated <code>(3x3)</code> rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the gripper frame to the camera frame (\(_{}^{c}\textrm{T}_g\)).</dd>
|
|
<dd><code>t_gripper2cam</code> - Estimated <code>(3x1)</code> translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the gripper frame to the camera frame (\(_{}^{c}\textrm{T}_g\)).
|
|
|
|
The function performs the Robot-World/Hand-Eye calibration using various methods. One approach consists in estimating the
|
|
rotation then the translation (separable solutions):
|
|
<ul>
|
|
<li>
|
|
M. Shah, Solving the robot-world/hand-eye calibration problem using the kronecker product \cite Shah2013SolvingTR
|
|
</li>
|
|
</ul>
|
|
|
|
Another approach consists in estimating simultaneously the rotation and the translation (simultaneous solutions),
|
|
with the following implemented method:
|
|
<ul>
|
|
<li>
|
|
A. Li, L. Wang, and D. Wu, Simultaneous robot-world and hand-eye calibration using dual-quaternions and kronecker product \cite Li2010SimultaneousRA
|
|
</li>
|
|
</ul>
|
|
|
|
The following picture describes the Robot-World/Hand-Eye calibration problem where the transformations between a robot and a world frame
|
|
and between a robot gripper ("hand") and a camera ("eye") mounted at the robot end-effector have to be estimated.
|
|
|
|

|
|
|
|
The calibration procedure is the following:
|
|
<ul>
|
|
<li>
|
|
a static calibration pattern is used to estimate the transformation between the target frame
|
|
and the camera frame
|
|
</li>
|
|
<li>
|
|
the robot gripper is moved in order to acquire several poses
|
|
</li>
|
|
<li>
|
|
for each pose, the homogeneous transformation between the gripper frame and the robot base frame is recorded using for
|
|
instance the robot kinematics
|
|
\(
|
|
\begin{bmatrix}
|
|
X_g\\
|
|
Y_g\\
|
|
Z_g\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{g}\textrm{R}_b & _{}^{g}\textrm{t}_b \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_b\\
|
|
Y_b\\
|
|
Z_b\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
</li>
|
|
<li>
|
|
for each pose, the homogeneous transformation between the calibration target frame (the world frame) and the camera frame is recorded using
|
|
for instance a pose estimation method (PnP) from 2D-3D point correspondences
|
|
\(
|
|
\begin{bmatrix}
|
|
X_c\\
|
|
Y_c\\
|
|
Z_c\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{c}\textrm{R}_w & _{}^{c}\textrm{t}_w \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_w\\
|
|
Y_w\\
|
|
Z_w\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
</li>
|
|
</ul>
|
|
|
|
The Robot-World/Hand-Eye calibration procedure returns the following homogeneous transformations
|
|
\(
|
|
\begin{bmatrix}
|
|
X_w\\
|
|
Y_w\\
|
|
Z_w\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{w}\textrm{R}_b & _{}^{w}\textrm{t}_b \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_b\\
|
|
Y_b\\
|
|
Z_b\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
\(
|
|
\begin{bmatrix}
|
|
X_c\\
|
|
Y_c\\
|
|
Z_c\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{c}\textrm{R}_g & _{}^{c}\textrm{t}_g \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_g\\
|
|
Y_g\\
|
|
Z_g\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
This problem is also known as solving the \(\mathbf{A}\mathbf{X}=\mathbf{Z}\mathbf{B}\) equation, with:
|
|
<ul>
|
|
<li>
|
|
\(\mathbf{A} \Leftrightarrow \hspace{0.1em} _{}^{c}\textrm{T}_w\)
|
|
</li>
|
|
<li>
|
|
\(\mathbf{X} \Leftrightarrow \hspace{0.1em} _{}^{w}\textrm{T}_b\)
|
|
</li>
|
|
<li>
|
|
\(\mathbf{Z} \Leftrightarrow \hspace{0.1em} _{}^{c}\textrm{T}_g\)
|
|
</li>
|
|
<li>
|
|
\(\mathbf{B} \Leftrightarrow \hspace{0.1em} _{}^{g}\textrm{T}_b\)
|
|
</li>
|
|
</ul>
|
|
|
|
\note
|
|
At least 3 measurements are required (input vectors size must be greater or equal to 3).</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrateRobotWorldHandEye-java.util.List-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrateRobotWorldHandEye</h4>
|
|
<pre>public static void calibrateRobotWorldHandEye(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_world2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_world2cam,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> R_base2gripper,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> t_base2gripper,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_base2world,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_base2world,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R_gripper2cam,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t_gripper2cam,
|
|
int method)</pre>
|
|
<div class="block">Computes Robot-World/Hand-Eye calibration: \(_{}^{w}\textrm{T}_b\) and \(_{}^{c}\textrm{T}_g\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>R_world2cam</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the world frame to the camera frame (\(_{}^{c}\textrm{T}_w\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the rotation, <code>(3x3)</code> rotation matrices or <code>(3x1)</code> rotation vectors,
|
|
for all the transformations from world frame to the camera frame.</dd>
|
|
<dd><code>t_world2cam</code> - Translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the world frame to the camera frame (\(_{}^{c}\textrm{T}_w\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the <code>(3x1)</code> translation vectors for all the transformations
|
|
from world frame to the camera frame.</dd>
|
|
<dd><code>R_base2gripper</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the robot base frame to the gripper frame (\(_{}^{g}\textrm{T}_b\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the rotation, <code>(3x3)</code> rotation matrices or <code>(3x1)</code> rotation vectors,
|
|
for all the transformations from robot base frame to the gripper frame.</dd>
|
|
<dd><code>t_base2gripper</code> - Rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the robot base frame to the gripper frame (\(_{}^{g}\textrm{T}_b\)).
|
|
This is a vector (<code>vector&lt;Mat&gt;</code>) that contains the <code>(3x1)</code> translation vectors for all the transformations
|
|
from robot base frame to the gripper frame.</dd>
|
|
<dd><code>R_base2world</code> - Estimated <code>(3x3)</code> rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the robot base frame to the world frame (\(_{}^{w}\textrm{T}_b\)).</dd>
|
|
<dd><code>t_base2world</code> - Estimated <code>(3x1)</code> translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the robot base frame to the world frame (\(_{}^{w}\textrm{T}_b\)).</dd>
|
|
<dd><code>R_gripper2cam</code> - Estimated <code>(3x3)</code> rotation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the gripper frame to the camera frame (\(_{}^{c}\textrm{T}_g\)).</dd>
|
|
<dd><code>t_gripper2cam</code> - Estimated <code>(3x1)</code> translation part extracted from the homogeneous matrix that transforms a point
|
|
expressed in the gripper frame to the camera frame (\(_{}^{c}\textrm{T}_g\)).</dd>
|
|
<dd><code>method</code> - One of the implemented Robot-World/Hand-Eye calibration method, see cv::RobotWorldHandEyeCalibrationMethod
|
|
|
|
The function performs the Robot-World/Hand-Eye calibration using various methods. One approach consists in estimating the
|
|
rotation then the translation (separable solutions):
|
|
<ul>
|
|
<li>
|
|
M. Shah, Solving the robot-world/hand-eye calibration problem using the kronecker product \cite Shah2013SolvingTR
|
|
</li>
|
|
</ul>
|
|
|
|
Another approach consists in estimating simultaneously the rotation and the translation (simultaneous solutions),
|
|
with the following implemented method:
|
|
<ul>
|
|
<li>
|
|
A. Li, L. Wang, and D. Wu, Simultaneous robot-world and hand-eye calibration using dual-quaternions and kronecker product \cite Li2010SimultaneousRA
|
|
</li>
|
|
</ul>
|
|
|
|
The following picture describes the Robot-World/Hand-Eye calibration problem where the transformations between a robot and a world frame
|
|
and between a robot gripper ("hand") and a camera ("eye") mounted at the robot end-effector have to be estimated.
|
|
|
|

|
|
|
|
The calibration procedure is the following:
|
|
<ul>
|
|
<li>
|
|
a static calibration pattern is used to estimate the transformation between the target frame
|
|
and the camera frame
|
|
</li>
|
|
<li>
|
|
the robot gripper is moved in order to acquire several poses
|
|
</li>
|
|
<li>
|
|
for each pose, the homogeneous transformation between the gripper frame and the robot base frame is recorded using for
|
|
instance the robot kinematics
|
|
\(
|
|
\begin{bmatrix}
|
|
X_g\\
|
|
Y_g\\
|
|
Z_g\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{g}\textrm{R}_b & _{}^{g}\textrm{t}_b \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_b\\
|
|
Y_b\\
|
|
Z_b\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
</li>
|
|
<li>
|
|
for each pose, the homogeneous transformation between the calibration target frame (the world frame) and the camera frame is recorded using
|
|
for instance a pose estimation method (PnP) from 2D-3D point correspondences
|
|
\(
|
|
\begin{bmatrix}
|
|
X_c\\
|
|
Y_c\\
|
|
Z_c\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{c}\textrm{R}_w & _{}^{c}\textrm{t}_w \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_w\\
|
|
Y_w\\
|
|
Z_w\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
</li>
|
|
</ul>
|
|
|
|
The Robot-World/Hand-Eye calibration procedure returns the following homogeneous transformations
|
|
\(
|
|
\begin{bmatrix}
|
|
X_w\\
|
|
Y_w\\
|
|
Z_w\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{w}\textrm{R}_b & _{}^{w}\textrm{t}_b \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_b\\
|
|
Y_b\\
|
|
Z_b\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
\(
|
|
\begin{bmatrix}
|
|
X_c\\
|
|
Y_c\\
|
|
Z_c\\
|
|
1
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
_{}^{c}\textrm{R}_g & _{}^{c}\textrm{t}_g \\
|
|
0_{1 \times 3} & 1
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X_g\\
|
|
Y_g\\
|
|
Z_g\\
|
|
1
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
This problem is also known as solving the \(\mathbf{A}\mathbf{X}=\mathbf{Z}\mathbf{B}\) equation, with:
|
|
<ul>
|
|
<li>
|
|
\(\mathbf{A} \Leftrightarrow \hspace{0.1em} _{}^{c}\textrm{T}_w\)
|
|
</li>
|
|
<li>
|
|
\(\mathbf{X} \Leftrightarrow \hspace{0.1em} _{}^{w}\textrm{T}_b\)
|
|
</li>
|
|
<li>
|
|
\(\mathbf{Z} \Leftrightarrow \hspace{0.1em} _{}^{c}\textrm{T}_g\)
|
|
</li>
|
|
<li>
|
|
\(\mathbf{B} \Leftrightarrow \hspace{0.1em} _{}^{g}\textrm{T}_b\)
|
|
</li>
|
|
</ul>
|
|
|
|
\note
|
|
At least 3 measurements are required (input vectors size must be greater or equal to 3).</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="calibrationMatrixValues-org.opencv.core.Mat-org.opencv.core.Size-double-double-double:A-double:A-double:A-org.opencv.core.Point-double:A-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>calibrationMatrixValues</h4>
|
|
<pre>public static void calibrationMatrixValues(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double apertureWidth,
|
|
double apertureHeight,
|
|
double[] fovx,
|
|
double[] fovy,
|
|
double[] focalLength,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> principalPoint,
|
|
double[] aspectRatio)</pre>
|
|
<div class="block">Computes useful camera characteristics from the camera intrinsic matrix.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix that can be estimated by #calibrateCamera or
|
|
#stereoCalibrate .</dd>
|
|
<dd><code>imageSize</code> - Input image size in pixels.</dd>
|
|
<dd><code>apertureWidth</code> - Physical width in mm of the sensor.</dd>
|
|
<dd><code>apertureHeight</code> - Physical height in mm of the sensor.</dd>
|
|
<dd><code>fovx</code> - Output field of view in degrees along the horizontal sensor axis.</dd>
|
|
<dd><code>fovy</code> - Output field of view in degrees along the vertical sensor axis.</dd>
|
|
<dd><code>focalLength</code> - Focal length of the lens in mm.</dd>
|
|
<dd><code>principalPoint</code> - Principal point in mm.</dd>
|
|
<dd><code>aspectRatio</code> - \(f_y/f_x\)
|
|
|
|
The function computes various useful camera characteristics from the previously estimated camera
|
|
matrix.
|
|
|
|
<b>Note:</b>
|
|
Do keep in mind that the unity measure 'mm' stands for whatever unit of measure one chooses for
|
|
the chessboard pitch (it can thus be any value).</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="checkChessboard-org.opencv.core.Mat-org.opencv.core.Size-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>checkChessboard</h4>
|
|
<pre>public static boolean checkChessboard(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> img,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> size)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>composeRT</h4>
|
|
<pre>public static void composeRT(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3)</pre>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rvec1</code> - First rotation vector.</dd>
|
|
<dd><code>tvec1</code> - First translation vector.</dd>
|
|
<dd><code>rvec2</code> - Second rotation vector.</dd>
|
|
<dd><code>tvec2</code> - Second translation vector.</dd>
|
|
<dd><code>rvec3</code> - Output rotation vector of the superposition.</dd>
|
|
<dd><code>tvec3</code> - Output translation vector of the superposition.
|
|
|
|
The functions compute:
|
|
|
|
\(\begin{array}{l} \texttt{rvec3} = \mathrm{rodrigues} ^{-1} \left ( \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \mathrm{rodrigues} ( \texttt{rvec1} ) \right ) \\ \texttt{tvec3} = \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \texttt{tvec1} + \texttt{tvec2} \end{array} ,\)
|
|
|
|
where \(\mathrm{rodrigues}\) denotes a rotation vector to a rotation matrix transformation, and
|
|
\(\mathrm{rodrigues}^{-1}\) denotes the inverse transformation. See Rodrigues for details.
|
|
|
|
Also, the functions can compute the derivatives of the output vectors with regards to the input
|
|
vectors (see matMulDeriv ). The functions are used inside #stereoCalibrate but can also be used in
|
|
your own code where Levenberg-Marquardt or another gradient-based solver is used to optimize a
|
|
function that contains a matrix multiplication.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>composeRT</h4>
|
|
<pre>public static void composeRT(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1)</pre>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rvec1</code> - First rotation vector.</dd>
|
|
<dd><code>tvec1</code> - First translation vector.</dd>
|
|
<dd><code>rvec2</code> - Second rotation vector.</dd>
|
|
<dd><code>tvec2</code> - Second translation vector.</dd>
|
|
<dd><code>rvec3</code> - Output rotation vector of the superposition.</dd>
|
|
<dd><code>tvec3</code> - Output translation vector of the superposition.</dd>
|
|
<dd><code>dr3dr1</code> - Optional output derivative of rvec3 with regard to rvec1
|
|
|
|
The functions compute:
|
|
|
|
\(\begin{array}{l} \texttt{rvec3} = \mathrm{rodrigues} ^{-1} \left ( \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \mathrm{rodrigues} ( \texttt{rvec1} ) \right ) \\ \texttt{tvec3} = \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \texttt{tvec1} + \texttt{tvec2} \end{array} ,\)
|
|
|
|
where \(\mathrm{rodrigues}\) denotes a rotation vector to a rotation matrix transformation, and
|
|
\(\mathrm{rodrigues}^{-1}\) denotes the inverse transformation. See Rodrigues for details.
|
|
|
|
Also, the functions can compute the derivatives of the output vectors with regards to the input
|
|
vectors (see matMulDeriv ). The functions are used inside #stereoCalibrate but can also be used in
|
|
your own code where Levenberg-Marquardt or another gradient-based solver is used to optimize a
|
|
function that contains a matrix multiplication.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>composeRT</h4>
|
|
<pre>public static void composeRT(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1)</pre>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rvec1</code> - First rotation vector.</dd>
|
|
<dd><code>tvec1</code> - First translation vector.</dd>
|
|
<dd><code>rvec2</code> - Second rotation vector.</dd>
|
|
<dd><code>tvec2</code> - Second translation vector.</dd>
|
|
<dd><code>rvec3</code> - Output rotation vector of the superposition.</dd>
|
|
<dd><code>tvec3</code> - Output translation vector of the superposition.</dd>
|
|
<dd><code>dr3dr1</code> - Optional output derivative of rvec3 with regard to rvec1</dd>
|
|
<dd><code>dr3dt1</code> - Optional output derivative of rvec3 with regard to tvec1
|
|
|
|
The functions compute:
|
|
|
|
\(\begin{array}{l} \texttt{rvec3} = \mathrm{rodrigues} ^{-1} \left ( \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \mathrm{rodrigues} ( \texttt{rvec1} ) \right ) \\ \texttt{tvec3} = \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \texttt{tvec1} + \texttt{tvec2} \end{array} ,\)
|
|
|
|
where \(\mathrm{rodrigues}\) denotes a rotation vector to a rotation matrix transformation, and
|
|
\(\mathrm{rodrigues}^{-1}\) denotes the inverse transformation. See Rodrigues for details.
|
|
|
|
Also, the functions can compute the derivatives of the output vectors with regards to the input
|
|
vectors (see matMulDeriv ). The functions are used inside #stereoCalibrate but can also be used in
|
|
your own code where Levenberg-Marquardt or another gradient-based solver is used to optimize a
|
|
function that contains a matrix multiplication.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>composeRT</h4>
|
|
<pre>public static void composeRT(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2)</pre>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rvec1</code> - First rotation vector.</dd>
|
|
<dd><code>tvec1</code> - First translation vector.</dd>
|
|
<dd><code>rvec2</code> - Second rotation vector.</dd>
|
|
<dd><code>tvec2</code> - Second translation vector.</dd>
|
|
<dd><code>rvec3</code> - Output rotation vector of the superposition.</dd>
|
|
<dd><code>tvec3</code> - Output translation vector of the superposition.</dd>
|
|
<dd><code>dr3dr1</code> - Optional output derivative of rvec3 with regard to rvec1</dd>
|
|
<dd><code>dr3dt1</code> - Optional output derivative of rvec3 with regard to tvec1</dd>
|
|
<dd><code>dr3dr2</code> - Optional output derivative of rvec3 with regard to rvec2
|
|
|
|
The functions compute:
|
|
|
|
\(\begin{array}{l} \texttt{rvec3} = \mathrm{rodrigues} ^{-1} \left ( \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \mathrm{rodrigues} ( \texttt{rvec1} ) \right ) \\ \texttt{tvec3} = \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \texttt{tvec1} + \texttt{tvec2} \end{array} ,\)
|
|
|
|
where \(\mathrm{rodrigues}\) denotes a rotation vector to a rotation matrix transformation, and
|
|
\(\mathrm{rodrigues}^{-1}\) denotes the inverse transformation. See Rodrigues for details.
|
|
|
|
Also, the functions can compute the derivatives of the output vectors with regards to the input
|
|
vectors (see matMulDeriv ). The functions are used inside #stereoCalibrate but can also be used in
|
|
your own code where Levenberg-Marquardt or another gradient-based solver is used to optimize a
|
|
function that contains a matrix multiplication.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>composeRT</h4>
|
|
<pre>public static void composeRT(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2)</pre>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rvec1</code> - First rotation vector.</dd>
|
|
<dd><code>tvec1</code> - First translation vector.</dd>
|
|
<dd><code>rvec2</code> - Second rotation vector.</dd>
|
|
<dd><code>tvec2</code> - Second translation vector.</dd>
|
|
<dd><code>rvec3</code> - Output rotation vector of the superposition.</dd>
|
|
<dd><code>tvec3</code> - Output translation vector of the superposition.</dd>
|
|
<dd><code>dr3dr1</code> - Optional output derivative of rvec3 with regard to rvec1</dd>
|
|
<dd><code>dr3dt1</code> - Optional output derivative of rvec3 with regard to tvec1</dd>
|
|
<dd><code>dr3dr2</code> - Optional output derivative of rvec3 with regard to rvec2</dd>
|
|
<dd><code>dr3dt2</code> - Optional output derivative of rvec3 with regard to tvec2
|
|
|
|
The functions compute:
|
|
|
|
\(\begin{array}{l} \texttt{rvec3} = \mathrm{rodrigues} ^{-1} \left ( \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \mathrm{rodrigues} ( \texttt{rvec1} ) \right ) \\ \texttt{tvec3} = \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \texttt{tvec1} + \texttt{tvec2} \end{array} ,\)
|
|
|
|
where \(\mathrm{rodrigues}\) denotes a rotation vector to a rotation matrix transformation, and
|
|
\(\mathrm{rodrigues}^{-1}\) denotes the inverse transformation. See Rodrigues for details.
|
|
|
|
Also, the functions can compute the derivatives of the output vectors with regards to the input
|
|
vectors (see matMulDeriv ). The functions are used inside #stereoCalibrate but can also be used in
|
|
your own code where Levenberg-Marquardt or another gradient-based solver is used to optimize a
|
|
function that contains a matrix multiplication.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>composeRT</h4>
|
|
<pre>public static void composeRT(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr1)</pre>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rvec1</code> - First rotation vector.</dd>
|
|
<dd><code>tvec1</code> - First translation vector.</dd>
|
|
<dd><code>rvec2</code> - Second rotation vector.</dd>
|
|
<dd><code>tvec2</code> - Second translation vector.</dd>
|
|
<dd><code>rvec3</code> - Output rotation vector of the superposition.</dd>
|
|
<dd><code>tvec3</code> - Output translation vector of the superposition.</dd>
|
|
<dd><code>dr3dr1</code> - Optional output derivative of rvec3 with regard to rvec1</dd>
|
|
<dd><code>dr3dt1</code> - Optional output derivative of rvec3 with regard to tvec1</dd>
|
|
<dd><code>dr3dr2</code> - Optional output derivative of rvec3 with regard to rvec2</dd>
|
|
<dd><code>dr3dt2</code> - Optional output derivative of rvec3 with regard to tvec2</dd>
|
|
<dd><code>dt3dr1</code> - Optional output derivative of tvec3 with regard to rvec1
|
|
|
|
The functions compute:
|
|
|
|
\(\begin{array}{l} \texttt{rvec3} = \mathrm{rodrigues} ^{-1} \left ( \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \mathrm{rodrigues} ( \texttt{rvec1} ) \right ) \\ \texttt{tvec3} = \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \texttt{tvec1} + \texttt{tvec2} \end{array} ,\)
|
|
|
|
where \(\mathrm{rodrigues}\) denotes a rotation vector to a rotation matrix transformation, and
|
|
\(\mathrm{rodrigues}^{-1}\) denotes the inverse transformation. See Rodrigues for details.
|
|
|
|
Also, the functions can compute the derivatives of the output vectors with regards to the input
|
|
vectors (see matMulDeriv ). The functions are used inside #stereoCalibrate but can also be used in
|
|
your own code where Levenberg-Marquardt or another gradient-based solver is used to optimize a
|
|
function that contains a matrix multiplication.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>composeRT</h4>
|
|
<pre>public static void composeRT(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dt1)</pre>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rvec1</code> - First rotation vector.</dd>
|
|
<dd><code>tvec1</code> - First translation vector.</dd>
|
|
<dd><code>rvec2</code> - Second rotation vector.</dd>
|
|
<dd><code>tvec2</code> - Second translation vector.</dd>
|
|
<dd><code>rvec3</code> - Output rotation vector of the superposition.</dd>
|
|
<dd><code>tvec3</code> - Output translation vector of the superposition.</dd>
|
|
<dd><code>dr3dr1</code> - Optional output derivative of rvec3 with regard to rvec1</dd>
|
|
<dd><code>dr3dt1</code> - Optional output derivative of rvec3 with regard to tvec1</dd>
|
|
<dd><code>dr3dr2</code> - Optional output derivative of rvec3 with regard to rvec2</dd>
|
|
<dd><code>dr3dt2</code> - Optional output derivative of rvec3 with regard to tvec2</dd>
|
|
<dd><code>dt3dr1</code> - Optional output derivative of tvec3 with regard to rvec1</dd>
|
|
<dd><code>dt3dt1</code> - Optional output derivative of tvec3 with regard to tvec1
|
|
|
|
The functions compute:
|
|
|
|
\(\begin{array}{l} \texttt{rvec3} = \mathrm{rodrigues} ^{-1} \left ( \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \mathrm{rodrigues} ( \texttt{rvec1} ) \right ) \\ \texttt{tvec3} = \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \texttt{tvec1} + \texttt{tvec2} \end{array} ,\)
|
|
|
|
where \(\mathrm{rodrigues}\) denotes a rotation vector to a rotation matrix transformation, and
|
|
\(\mathrm{rodrigues}^{-1}\) denotes the inverse transformation. See Rodrigues for details.
|
|
|
|
Also, the functions can compute the derivatives of the output vectors with regards to the input
|
|
vectors (see matMulDeriv ). The functions are used inside #stereoCalibrate but can also be used in
|
|
your own code where Levenberg-Marquardt or another gradient-based solver is used to optimize a
|
|
function that contains a matrix multiplication.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>composeRT</h4>
|
|
<pre>public static void composeRT(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr2)</pre>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rvec1</code> - First rotation vector.</dd>
|
|
<dd><code>tvec1</code> - First translation vector.</dd>
|
|
<dd><code>rvec2</code> - Second rotation vector.</dd>
|
|
<dd><code>tvec2</code> - Second translation vector.</dd>
|
|
<dd><code>rvec3</code> - Output rotation vector of the superposition.</dd>
|
|
<dd><code>tvec3</code> - Output translation vector of the superposition.</dd>
|
|
<dd><code>dr3dr1</code> - Optional output derivative of rvec3 with regard to rvec1</dd>
|
|
<dd><code>dr3dt1</code> - Optional output derivative of rvec3 with regard to tvec1</dd>
|
|
<dd><code>dr3dr2</code> - Optional output derivative of rvec3 with regard to rvec2</dd>
|
|
<dd><code>dr3dt2</code> - Optional output derivative of rvec3 with regard to tvec2</dd>
|
|
<dd><code>dt3dr1</code> - Optional output derivative of tvec3 with regard to rvec1</dd>
|
|
<dd><code>dt3dt1</code> - Optional output derivative of tvec3 with regard to tvec1</dd>
|
|
<dd><code>dt3dr2</code> - Optional output derivative of tvec3 with regard to rvec2
|
|
|
|
The functions compute:
|
|
|
|
\(\begin{array}{l} \texttt{rvec3} = \mathrm{rodrigues} ^{-1} \left ( \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \mathrm{rodrigues} ( \texttt{rvec1} ) \right ) \\ \texttt{tvec3} = \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \texttt{tvec1} + \texttt{tvec2} \end{array} ,\)
|
|
|
|
where \(\mathrm{rodrigues}\) denotes a rotation vector to a rotation matrix transformation, and
|
|
\(\mathrm{rodrigues}^{-1}\) denotes the inverse transformation. See Rodrigues for details.
|
|
|
|
Also, the functions can compute the derivatives of the output vectors with regards to the input
|
|
vectors (see matMulDeriv ). The functions are used inside #stereoCalibrate but can also be used in
|
|
your own code where Levenberg-Marquardt or another gradient-based solver is used to optimize a
|
|
function that contains a matrix multiplication.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="composeRT-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>composeRT</h4>
|
|
<pre>public static void composeRT(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dr3dt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dt3dt2)</pre>
|
|
<div class="block">Combines two rotation-and-shift transformations.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rvec1</code> - First rotation vector.</dd>
|
|
<dd><code>tvec1</code> - First translation vector.</dd>
|
|
<dd><code>rvec2</code> - Second rotation vector.</dd>
|
|
<dd><code>tvec2</code> - Second translation vector.</dd>
|
|
<dd><code>rvec3</code> - Output rotation vector of the superposition.</dd>
|
|
<dd><code>tvec3</code> - Output translation vector of the superposition.</dd>
|
|
<dd><code>dr3dr1</code> - Optional output derivative of rvec3 with regard to rvec1</dd>
|
|
<dd><code>dr3dt1</code> - Optional output derivative of rvec3 with regard to tvec1</dd>
|
|
<dd><code>dr3dr2</code> - Optional output derivative of rvec3 with regard to rvec2</dd>
|
|
<dd><code>dr3dt2</code> - Optional output derivative of rvec3 with regard to tvec2</dd>
|
|
<dd><code>dt3dr1</code> - Optional output derivative of tvec3 with regard to rvec1</dd>
|
|
<dd><code>dt3dt1</code> - Optional output derivative of tvec3 with regard to tvec1</dd>
|
|
<dd><code>dt3dr2</code> - Optional output derivative of tvec3 with regard to rvec2</dd>
|
|
<dd><code>dt3dt2</code> - Optional output derivative of tvec3 with regard to tvec2
|
|
|
|
The functions compute:
|
|
|
|
\(\begin{array}{l} \texttt{rvec3} = \mathrm{rodrigues} ^{-1} \left ( \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \mathrm{rodrigues} ( \texttt{rvec1} ) \right ) \\ \texttt{tvec3} = \mathrm{rodrigues} ( \texttt{rvec2} ) \cdot \texttt{tvec1} + \texttt{tvec2} \end{array} ,\)
|
|
|
|
where \(\mathrm{rodrigues}\) denotes a rotation vector to a rotation matrix transformation, and
|
|
\(\mathrm{rodrigues}^{-1}\) denotes the inverse transformation. See Rodrigues for details.
|
|
|
|
Also, the functions can compute the derivatives of the output vectors with regards to the input
|
|
vectors (see matMulDeriv ). The functions are used inside #stereoCalibrate but can also be used in
|
|
your own code where Levenberg-Marquardt or another gradient-based solver is used to optimize a
|
|
function that contains a matrix multiplication.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="computeCorrespondEpilines-org.opencv.core.Mat-int-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>computeCorrespondEpilines</h4>
|
|
<pre>public static void computeCorrespondEpilines(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points,
|
|
int whichImage,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> lines)</pre>
|
|
<div class="block">For points in an image of a stereo pair, computes the corresponding epilines in the other image.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points</code> - Input points. \(N \times 1\) or \(1 \times N\) matrix of type CV_32FC2 or
|
|
vector<Point2f> .</dd>
|
|
<dd><code>whichImage</code> - Index of the image (1 or 2) that contains the points .</dd>
|
|
<dd><code>F</code> - Fundamental matrix that can be estimated using #findFundamentalMat or #stereoRectify .</dd>
|
|
<dd><code>lines</code> - Output vector of the epipolar lines corresponding to the points in the other image.
|
|
Each line \(ax + by + c=0\) is encoded by 3 numbers \((a, b, c)\) .
|
|
|
|
For every point in one of the two images of a stereo pair, the function finds the equation of the
|
|
corresponding epipolar line in the other image.
|
|
|
|
From the fundamental matrix definition (see #findFundamentalMat ), line \(l^{(2)}_i\) in the second
|
|
image for the point \(p^{(1)}_i\) in the first image (when whichImage=1 ) is computed as:
|
|
|
|
\(l^{(2)}_i = F p^{(1)}_i\)
|
|
|
|
And vice versa, when whichImage=2, \(l^{(1)}_i\) is computed from \(p^{(2)}_i\) as:
|
|
|
|
\(l^{(1)}_i = F^T p^{(2)}_i\)
|
|
|
|
Line coefficients are defined up to a scale. They are normalized so that \(a_i^2+b_i^2=1\) .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="convertPointsFromHomogeneous-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>convertPointsFromHomogeneous</h4>
|
|
<pre>public static void convertPointsFromHomogeneous(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst)</pre>
|
|
<div class="block">Converts points from homogeneous to Euclidean space.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - Input vector of N-dimensional points.</dd>
|
|
<dd><code>dst</code> - Output vector of N-1-dimensional points.
|
|
|
|
The function converts points homogeneous to Euclidean space using perspective projection. That is,
|
|
each point (x1, x2, ... x(n-1), xn) is converted to (x1/xn, x2/xn, ..., x(n-1)/xn). When xn=0, the
|
|
output point coordinates will be (0,0,0,...).</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="convertPointsToHomogeneous-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>convertPointsToHomogeneous</h4>
|
|
<pre>public static void convertPointsToHomogeneous(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst)</pre>
|
|
<div class="block">Converts points from Euclidean to homogeneous space.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - Input vector of N-dimensional points.</dd>
|
|
<dd><code>dst</code> - Output vector of N+1-dimensional points.
|
|
|
|
The function converts points from Euclidean to homogeneous space by appending 1's to the tuple of
|
|
point coordinates. That is, each point (x1, x2, ..., xn) is converted to (x1, x2, ..., xn, 1).</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="correctMatches-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>correctMatches</h4>
|
|
<pre>public static void correctMatches(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newPoints1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newPoints2)</pre>
|
|
<div class="block">Refines coordinates of corresponding points.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>F</code> - 3x3 fundamental matrix.</dd>
|
|
<dd><code>points1</code> - 1xN array containing the first set of points.</dd>
|
|
<dd><code>points2</code> - 1xN array containing the second set of points.</dd>
|
|
<dd><code>newPoints1</code> - The optimized points1.</dd>
|
|
<dd><code>newPoints2</code> - The optimized points2.
|
|
|
|
The function implements the Optimal Triangulation Method (see Multiple View Geometry for details).
|
|
For each given point correspondence points1[i] <-> points2[i], and a fundamental matrix F, it
|
|
computes the corrected correspondences newPoints1[i] <-> newPoints2[i] that minimize the geometric
|
|
error \(d(points1[i], newPoints1[i])^2 + d(points2[i],newPoints2[i])^2\) (where \(d(a,b)\) is the
|
|
geometric distance between points \(a\) and \(b\) ) subject to the epipolar constraint
|
|
\(newPoints2^T * F * newPoints1 = 0\) .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="decomposeEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>decomposeEssentialMat</h4>
|
|
<pre>public static void decomposeEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t)</pre>
|
|
<div class="block">Decompose an essential matrix to possible rotations and translation.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>R1</code> - One possible rotation matrix.</dd>
|
|
<dd><code>R2</code> - Another possible rotation matrix.</dd>
|
|
<dd><code>t</code> - One possible translation.
|
|
|
|
This function decomposes the essential matrix E using svd decomposition CITE: HartleyZ00. In
|
|
general, four possible poses exist for the decomposition of E. They are \([R_1, t]\),
|
|
\([R_1, -t]\), \([R_2, t]\), \([R_2, -t]\).
|
|
|
|
If E gives the epipolar constraint \([p_2; 1]^T A^{-T} E A^{-1} [p_1; 1] = 0\) between the image
|
|
points \(p_1\) in the first image and \(p_2\) in second image, then any of the tuples
|
|
\([R_1, t]\), \([R_1, -t]\), \([R_2, t]\), \([R_2, -t]\) is a change of basis from the first
|
|
camera's coordinate system to the second camera's coordinate system. However, by decomposing E, one
|
|
can only get the direction of the translation. For this reason, the translation t is returned with
|
|
unit length.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="decomposeHomographyMat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-java.util.List-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>decomposeHomographyMat</h4>
|
|
<pre>public static int decomposeHomographyMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rotations,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> translations,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> normals)</pre>
|
|
<div class="block">Decompose a homography matrix to rotation(s), translation(s) and plane normal(s).</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>H</code> - The input homography matrix between two images.</dd>
|
|
<dd><code>K</code> - The input camera intrinsic matrix.</dd>
|
|
<dd><code>rotations</code> - Array of rotation matrices.</dd>
|
|
<dd><code>translations</code> - Array of translation matrices.</dd>
|
|
<dd><code>normals</code> - Array of plane normal matrices.
|
|
|
|
This function extracts relative camera motion between two views of a planar object and returns up to
|
|
four mathematical solution tuples of rotation, translation, and plane normal. The decomposition of
|
|
the homography matrix H is described in detail in CITE: Malis.
|
|
|
|
If the homography H, induced by the plane, gives the constraint
|
|
\(s_i \vecthree{x'_i}{y'_i}{1} \sim H \vecthree{x_i}{y_i}{1}\) on the source image points
|
|
\(p_i\) and the destination image points \(p'_i\), then the tuple of rotations[k] and
|
|
translations[k] is a change of basis from the source camera's coordinate system to the destination
|
|
camera's coordinate system. However, by decomposing H, one can only get the translation normalized
|
|
by the (typically unknown) depth of the scene, i.e. its direction but with normalized length.
|
|
|
|
If point correspondences are available, at least two solutions may further be invalidated, by
|
|
applying positive depth constraint, i.e. all points must be in front of the camera.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>decomposeProjectionMatrix</h4>
|
|
<pre>public static void decomposeProjectionMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect)</pre>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>projMatrix</code> - 3x4 input projection matrix P.</dd>
|
|
<dd><code>cameraMatrix</code> - Output 3x3 camera intrinsic matrix \(\cameramatrix{A}\).</dd>
|
|
<dd><code>rotMatrix</code> - Output 3x3 external rotation matrix R.</dd>
|
|
<dd><code>transVect</code> - Output 4x1 translation vector T.
|
|
degrees.
|
|
|
|
The function computes a decomposition of a projection matrix into a calibration and a rotation
|
|
matrix and the position of a camera.
|
|
|
|
It optionally returns three rotation matrices, one for each axis, and three Euler angles that could
|
|
be used in OpenGL. Note, there is always more than one sequence of rotations about the three
|
|
principal axes that results in the same orientation of an object, e.g. see CITE: Slabaugh . Returned
|
|
tree rotation matrices and corresponding three Euler angles are only one of the possible solutions.
|
|
|
|
The function is based on RQDecomp3x3 .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>decomposeProjectionMatrix</h4>
|
|
<pre>public static void decomposeProjectionMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixX)</pre>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>projMatrix</code> - 3x4 input projection matrix P.</dd>
|
|
<dd><code>cameraMatrix</code> - Output 3x3 camera intrinsic matrix \(\cameramatrix{A}\).</dd>
|
|
<dd><code>rotMatrix</code> - Output 3x3 external rotation matrix R.</dd>
|
|
<dd><code>transVect</code> - Output 4x1 translation vector T.</dd>
|
|
<dd><code>rotMatrixX</code> - Optional 3x3 rotation matrix around x-axis.
|
|
degrees.
|
|
|
|
The function computes a decomposition of a projection matrix into a calibration and a rotation
|
|
matrix and the position of a camera.
|
|
|
|
It optionally returns three rotation matrices, one for each axis, and three Euler angles that could
|
|
be used in OpenGL. Note, there is always more than one sequence of rotations about the three
|
|
principal axes that results in the same orientation of an object, e.g. see CITE: Slabaugh . Returned
|
|
tree rotation matrices and corresponding three Euler angles are only one of the possible solutions.
|
|
|
|
The function is based on RQDecomp3x3 .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>decomposeProjectionMatrix</h4>
|
|
<pre>public static void decomposeProjectionMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixX,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixY)</pre>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>projMatrix</code> - 3x4 input projection matrix P.</dd>
|
|
<dd><code>cameraMatrix</code> - Output 3x3 camera intrinsic matrix \(\cameramatrix{A}\).</dd>
|
|
<dd><code>rotMatrix</code> - Output 3x3 external rotation matrix R.</dd>
|
|
<dd><code>transVect</code> - Output 4x1 translation vector T.</dd>
|
|
<dd><code>rotMatrixX</code> - Optional 3x3 rotation matrix around x-axis.</dd>
|
|
<dd><code>rotMatrixY</code> - Optional 3x3 rotation matrix around y-axis.
|
|
degrees.
|
|
|
|
The function computes a decomposition of a projection matrix into a calibration and a rotation
|
|
matrix and the position of a camera.
|
|
|
|
It optionally returns three rotation matrices, one for each axis, and three Euler angles that could
|
|
be used in OpenGL. Note, there is always more than one sequence of rotations about the three
|
|
principal axes that results in the same orientation of an object, e.g. see CITE: Slabaugh . Returned
|
|
tree rotation matrices and corresponding three Euler angles are only one of the possible solutions.
|
|
|
|
The function is based on RQDecomp3x3 .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>decomposeProjectionMatrix</h4>
|
|
<pre>public static void decomposeProjectionMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixX,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixY,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixZ)</pre>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>projMatrix</code> - 3x4 input projection matrix P.</dd>
|
|
<dd><code>cameraMatrix</code> - Output 3x3 camera intrinsic matrix \(\cameramatrix{A}\).</dd>
|
|
<dd><code>rotMatrix</code> - Output 3x3 external rotation matrix R.</dd>
|
|
<dd><code>transVect</code> - Output 4x1 translation vector T.</dd>
|
|
<dd><code>rotMatrixX</code> - Optional 3x3 rotation matrix around x-axis.</dd>
|
|
<dd><code>rotMatrixY</code> - Optional 3x3 rotation matrix around y-axis.</dd>
|
|
<dd><code>rotMatrixZ</code> - Optional 3x3 rotation matrix around z-axis.
|
|
degrees.
|
|
|
|
The function computes a decomposition of a projection matrix into a calibration and a rotation
|
|
matrix and the position of a camera.
|
|
|
|
It optionally returns three rotation matrices, one for each axis, and three Euler angles that could
|
|
be used in OpenGL. Note, there is always more than one sequence of rotations about the three
|
|
principal axes that results in the same orientation of an object, e.g. see CITE: Slabaugh . Returned
|
|
tree rotation matrices and corresponding three Euler angles are only one of the possible solutions.
|
|
|
|
The function is based on RQDecomp3x3 .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="decomposeProjectionMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>decomposeProjectionMatrix</h4>
|
|
<pre>public static void decomposeProjectionMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> transVect,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixX,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixY,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rotMatrixZ,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> eulerAngles)</pre>
|
|
<div class="block">Decomposes a projection matrix into a rotation matrix and a camera intrinsic matrix.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>projMatrix</code> - 3x4 input projection matrix P.</dd>
|
|
<dd><code>cameraMatrix</code> - Output 3x3 camera intrinsic matrix \(\cameramatrix{A}\).</dd>
|
|
<dd><code>rotMatrix</code> - Output 3x3 external rotation matrix R.</dd>
|
|
<dd><code>transVect</code> - Output 4x1 translation vector T.</dd>
|
|
<dd><code>rotMatrixX</code> - Optional 3x3 rotation matrix around x-axis.</dd>
|
|
<dd><code>rotMatrixY</code> - Optional 3x3 rotation matrix around y-axis.</dd>
|
|
<dd><code>rotMatrixZ</code> - Optional 3x3 rotation matrix around z-axis.</dd>
|
|
<dd><code>eulerAngles</code> - Optional three-element vector containing three Euler angles of rotation in
|
|
degrees.
|
|
|
|
The function computes a decomposition of a projection matrix into a calibration and a rotation
|
|
matrix and the position of a camera.
|
|
|
|
It optionally returns three rotation matrices, one for each axis, and three Euler angles that could
|
|
be used in OpenGL. Note, there is always more than one sequence of rotations about the three
|
|
principal axes that results in the same orientation of an object, e.g. see CITE: Slabaugh . Returned
|
|
tree rotation matrices and corresponding three Euler angles are only one of the possible solutions.
|
|
|
|
The function is based on RQDecomp3x3 .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="drawChessboardCorners-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.MatOfPoint2f-boolean-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>drawChessboardCorners</h4>
|
|
<pre>public static void drawChessboardCorners(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> corners,
|
|
boolean patternWasFound)</pre>
|
|
<div class="block">Renders the detected chessboard corners.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Destination image. It must be an 8-bit color image.</dd>
|
|
<dd><code>patternSize</code> - Number of inner corners per a chessboard row and column
|
|
(patternSize = cv::Size(points_per_row,points_per_column)).</dd>
|
|
<dd><code>corners</code> - Array of detected corners, the output of #findChessboardCorners.</dd>
|
|
<dd><code>patternWasFound</code> - Parameter indicating whether the complete board was found or not. The
|
|
return value of #findChessboardCorners should be passed here.
|
|
|
|
The function draws individual chessboard corners detected either as red circles if the board was not
|
|
found, or as colored corners connected with lines if the board was found.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="drawFrameAxes-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-float-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>drawFrameAxes</h4>
|
|
<pre>public static void drawFrameAxes(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
float length)</pre>
|
|
<div class="block">Draw axes of the world/object coordinate system from pose estimation. SEE: solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Input/output image. It must have 1 or 3 channels. The number of channels is not altered.</dd>
|
|
<dd><code>cameraMatrix</code> - Input 3x3 floating-point matrix of camera intrinsic parameters.
|
|
\(\cameramatrix{A}\)</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>rvec</code> - Rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Translation vector.</dd>
|
|
<dd><code>length</code> - Length of the painted axes in the same unit than tvec (usually in meters).
|
|
|
|
This function draws the axes of the world/object coordinate system w.r.t. to the camera frame.
|
|
OX is drawn in red, OY in green and OZ in blue.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="drawFrameAxes-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-float-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>drawFrameAxes</h4>
|
|
<pre>public static void drawFrameAxes(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
float length,
|
|
int thickness)</pre>
|
|
<div class="block">Draw axes of the world/object coordinate system from pose estimation. SEE: solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Input/output image. It must have 1 or 3 channels. The number of channels is not altered.</dd>
|
|
<dd><code>cameraMatrix</code> - Input 3x3 floating-point matrix of camera intrinsic parameters.
|
|
\(\cameramatrix{A}\)</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>rvec</code> - Rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Translation vector.</dd>
|
|
<dd><code>length</code> - Length of the painted axes in the same unit than tvec (usually in meters).</dd>
|
|
<dd><code>thickness</code> - Line thickness of the painted axes.
|
|
|
|
This function draws the axes of the world/object coordinate system w.r.t. to the camera frame.
|
|
OX is drawn in red, OY in green and OZ in blue.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12}\\
|
|
a_{21} & a_{22}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set containing \((X,Y)\).</dd>
|
|
<dd><code>to</code> - Second input 2D point set containing \((x,y)\).
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.
|
|
a point as an inlier. Applies only to RANSAC.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation matrix \(2 \times 3\) or empty matrix if transformation
|
|
could not be estimated. The returned matrix has the following form:
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & b_1\\
|
|
a_{21} & a_{22} & b_2\\
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
The function estimates an optimal 2D affine transformation between two 2D point sets using the
|
|
selected robust algorithm.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but needs a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffinePartial2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12}\\
|
|
a_{21} & a_{22}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set containing \((X,Y)\).</dd>
|
|
<dd><code>to</code> - Second input 2D point set containing \((x,y)\).</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.
|
|
a point as an inlier. Applies only to RANSAC.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation matrix \(2 \times 3\) or empty matrix if transformation
|
|
could not be estimated. The returned matrix has the following form:
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & b_1\\
|
|
a_{21} & a_{22} & b_2\\
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
The function estimates an optimal 2D affine transformation between two 2D point sets using the
|
|
selected robust algorithm.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but needs a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffinePartial2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12}\\
|
|
a_{21} & a_{22}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set containing \((X,Y)\).</dd>
|
|
<dd><code>to</code> - Second input 2D point set containing \((x,y)\).</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.
|
|
a point as an inlier. Applies only to RANSAC.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation matrix \(2 \times 3\) or empty matrix if transformation
|
|
could not be estimated. The returned matrix has the following form:
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & b_1\\
|
|
a_{21} & a_{22} & b_2\\
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
The function estimates an optimal 2D affine transformation between two 2D point sets using the
|
|
selected robust algorithm.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but needs a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffinePartial2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12}\\
|
|
a_{21} & a_{22}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set containing \((X,Y)\).</dd>
|
|
<dd><code>to</code> - Second input 2D point set containing \((x,y)\).</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider
|
|
a point as an inlier. Applies only to RANSAC.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation matrix \(2 \times 3\) or empty matrix if transformation
|
|
could not be estimated. The returned matrix has the following form:
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & b_1\\
|
|
a_{21} & a_{22} & b_2\\
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
The function estimates an optimal 2D affine transformation between two 2D point sets using the
|
|
selected robust algorithm.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but needs a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffinePartial2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12}\\
|
|
a_{21} & a_{22}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set containing \((X,Y)\).</dd>
|
|
<dd><code>to</code> - Second input 2D point set containing \((x,y)\).</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider
|
|
a point as an inlier. Applies only to RANSAC.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation matrix \(2 \times 3\) or empty matrix if transformation
|
|
could not be estimated. The returned matrix has the following form:
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & b_1\\
|
|
a_{21} & a_{22} & b_2\\
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
The function estimates an optimal 2D affine transformation between two 2D point sets using the
|
|
selected robust algorithm.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but needs a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffinePartial2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters,
|
|
double confidence)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12}\\
|
|
a_{21} & a_{22}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set containing \((X,Y)\).</dd>
|
|
<dd><code>to</code> - Second input 2D point set containing \((x,y)\).</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider
|
|
a point as an inlier. Applies only to RANSAC.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.</dd>
|
|
<dd><code>confidence</code> - Confidence level, between 0 and 1, for the estimated transformation. Anything
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation matrix \(2 \times 3\) or empty matrix if transformation
|
|
could not be estimated. The returned matrix has the following form:
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & b_1\\
|
|
a_{21} & a_{22} & b_2\\
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
The function estimates an optimal 2D affine transformation between two 2D point sets using the
|
|
selected robust algorithm.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but needs a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffinePartial2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-double-long-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters,
|
|
double confidence,
|
|
long refineIters)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 2D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12}\\
|
|
a_{21} & a_{22}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set containing \((X,Y)\).</dd>
|
|
<dd><code>to</code> - Second input 2D point set containing \((x,y)\).</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider
|
|
a point as an inlier. Applies only to RANSAC.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.</dd>
|
|
<dd><code>confidence</code> - Confidence level, between 0 and 1, for the estimated transformation. Anything
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.</dd>
|
|
<dd><code>refineIters</code> - Maximum number of iterations of refining algorithm (Levenberg-Marquardt).
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation matrix \(2 \times 3\) or empty matrix if transformation
|
|
could not be estimated. The returned matrix has the following form:
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & b_1\\
|
|
a_{21} & a_{22} & b_2\\
|
|
\end{bmatrix}
|
|
\)
|
|
|
|
The function estimates an optimal 2D affine transformation between two 2D point sets using the
|
|
selected robust algorithm.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but needs a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffinePartial2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pts1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pts2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine3D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.
|
|
|
|
It computes \(R,s,t\) minimizing \(\sum{i} dst_i - c \cdot R \cdot src_i \)
|
|
where \(R\) is a 3x3 rotation matrix, \(t\) is a 3x1 translation vector and \(s\) is a
|
|
scalar size value. This is an implementation of the algorithm by Umeyama \cite umeyama1991least .
|
|
The estimated affine transform has a homogeneous scale which is a subclass of affine
|
|
transformations with 7 degrees of freedom. The paired point sets need to comprise at least 3
|
|
points each.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - First input 3D point set.</dd>
|
|
<dd><code>dst</code> - Second input 3D point set.
|
|
Else the pointed-to variable will be set to the optimal scale.
|
|
This might be unwanted, e.g. when optimizing a transform between a right- and a
|
|
left-handed coordinate system.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>3D affine transformation matrix \(3 \times 4\) of the form
|
|
\(T =
|
|
\begin{bmatrix}
|
|
R & t\\
|
|
\end{bmatrix}
|
|
\)</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-double:A-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine3D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
double[] scale)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.
|
|
|
|
It computes \(R,s,t\) minimizing \(\sum{i} dst_i - c \cdot R \cdot src_i \)
|
|
where \(R\) is a 3x3 rotation matrix, \(t\) is a 3x1 translation vector and \(s\) is a
|
|
scalar size value. This is an implementation of the algorithm by Umeyama \cite umeyama1991least .
|
|
The estimated affine transform has a homogeneous scale which is a subclass of affine
|
|
transformations with 7 degrees of freedom. The paired point sets need to comprise at least 3
|
|
points each.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - First input 3D point set.</dd>
|
|
<dd><code>dst</code> - Second input 3D point set.</dd>
|
|
<dd><code>scale</code> - If null is passed, the scale parameter c will be assumed to be 1.0.
|
|
Else the pointed-to variable will be set to the optimal scale.
|
|
This might be unwanted, e.g. when optimizing a transform between a right- and a
|
|
left-handed coordinate system.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>3D affine transformation matrix \(3 \times 4\) of the form
|
|
\(T =
|
|
\begin{bmatrix}
|
|
R & t\\
|
|
\end{bmatrix}
|
|
\)</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-double:A-boolean-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine3D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffine3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
double[] scale,
|
|
boolean force_rotation)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.
|
|
|
|
It computes \(R,s,t\) minimizing \(\sum{i} dst_i - c \cdot R \cdot src_i \)
|
|
where \(R\) is a 3x3 rotation matrix, \(t\) is a 3x1 translation vector and \(s\) is a
|
|
scalar size value. This is an implementation of the algorithm by Umeyama \cite umeyama1991least .
|
|
The estimated affine transform has a homogeneous scale which is a subclass of affine
|
|
transformations with 7 degrees of freedom. The paired point sets need to comprise at least 3
|
|
points each.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - First input 3D point set.</dd>
|
|
<dd><code>dst</code> - Second input 3D point set.</dd>
|
|
<dd><code>scale</code> - If null is passed, the scale parameter c will be assumed to be 1.0.
|
|
Else the pointed-to variable will be set to the optimal scale.</dd>
|
|
<dd><code>force_rotation</code> - If true, the returned rotation will never be a reflection.
|
|
This might be unwanted, e.g. when optimizing a transform between a right- and a
|
|
left-handed coordinate system.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>3D affine transformation matrix \(3 \times 4\) of the form
|
|
\(T =
|
|
\begin{bmatrix}
|
|
R & t\\
|
|
\end{bmatrix}
|
|
\)</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine3D</h4>
|
|
<pre>public static int estimateAffine3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
z\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & a_{13}\\
|
|
a_{21} & a_{22} & a_{23}\\
|
|
a_{31} & a_{32} & a_{33}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
Z\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
b_3\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - First input 3D point set containing \((X,Y,Z)\).</dd>
|
|
<dd><code>dst</code> - Second input 3D point set containing \((x,y,z)\).</dd>
|
|
<dd><code>out</code> - Output 3D affine transformation matrix \(3 \times 4\) of the form
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & a_{13} & b_1\\
|
|
a_{21} & a_{22} & a_{23} & b_2\\
|
|
a_{31} & a_{32} & a_{33} & b_3\\
|
|
\end{bmatrix}
|
|
\)</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).
|
|
an inlier.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
|
|
The function estimates an optimal 3D affine transformation between two 3D point sets using the
|
|
RANSAC algorithm.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine3D</h4>
|
|
<pre>public static int estimateAffine3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
double ransacThreshold)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
z\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & a_{13}\\
|
|
a_{21} & a_{22} & a_{23}\\
|
|
a_{31} & a_{32} & a_{33}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
Z\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
b_3\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - First input 3D point set containing \((X,Y,Z)\).</dd>
|
|
<dd><code>dst</code> - Second input 3D point set containing \((x,y,z)\).</dd>
|
|
<dd><code>out</code> - Output 3D affine transformation matrix \(3 \times 4\) of the form
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & a_{13} & b_1\\
|
|
a_{21} & a_{22} & a_{23} & b_2\\
|
|
a_{31} & a_{32} & a_{33} & b_3\\
|
|
\end{bmatrix}
|
|
\)</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).</dd>
|
|
<dd><code>ransacThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider a point as
|
|
an inlier.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
|
|
The function estimates an optimal 3D affine transformation between two 3D point sets using the
|
|
RANSAC algorithm.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffine3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffine3D</h4>
|
|
<pre>public static int estimateAffine3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
double ransacThreshold,
|
|
double confidence)</pre>
|
|
<div class="block">Computes an optimal affine transformation between two 3D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
z\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & a_{13}\\
|
|
a_{21} & a_{22} & a_{23}\\
|
|
a_{31} & a_{32} & a_{33}\\
|
|
\end{bmatrix}
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
Z\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
b_3\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - First input 3D point set containing \((X,Y,Z)\).</dd>
|
|
<dd><code>dst</code> - Second input 3D point set containing \((x,y,z)\).</dd>
|
|
<dd><code>out</code> - Output 3D affine transformation matrix \(3 \times 4\) of the form
|
|
\(
|
|
\begin{bmatrix}
|
|
a_{11} & a_{12} & a_{13} & b_1\\
|
|
a_{21} & a_{22} & a_{23} & b_2\\
|
|
a_{31} & a_{32} & a_{33} & b_3\\
|
|
\end{bmatrix}
|
|
\)</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).</dd>
|
|
<dd><code>ransacThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider a point as
|
|
an inlier.</dd>
|
|
<dd><code>confidence</code> - Confidence level, between 0 and 1, for the estimated transformation. Anything
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
|
|
The function estimates an optimal 3D affine transformation between two 3D point sets using the
|
|
RANSAC algorithm.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffinePartial2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffinePartial2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to)</pre>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set.</dd>
|
|
<dd><code>to</code> - Second input 2D point set.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.
|
|
a point as an inlier. Applies only to RANSAC.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation (4 degrees of freedom) matrix \(2 \times 3\) or
|
|
empty matrix if transformation could not be estimated.
|
|
|
|
The function estimates an optimal 2D affine transformation with 4 degrees of freedom limited to
|
|
combinations of translation, rotation, and uniform scaling. Uses the selected algorithm for robust
|
|
estimation.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
Estimated transformation matrix is:
|
|
\( \begin{bmatrix} \cos(\theta) \cdot s & -\sin(\theta) \cdot s & t_x \\
|
|
\sin(\theta) \cdot s & \cos(\theta) \cdot s & t_y
|
|
\end{bmatrix} \)
|
|
Where \( \theta \) is the rotation angle, \( s \) the scaling factor and \( t_x, t_y \) are
|
|
translations in \( x, y \) axes respectively.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffine2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffinePartial2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffinePartial2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</pre>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set.</dd>
|
|
<dd><code>to</code> - Second input 2D point set.</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.
|
|
a point as an inlier. Applies only to RANSAC.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation (4 degrees of freedom) matrix \(2 \times 3\) or
|
|
empty matrix if transformation could not be estimated.
|
|
|
|
The function estimates an optimal 2D affine transformation with 4 degrees of freedom limited to
|
|
combinations of translation, rotation, and uniform scaling. Uses the selected algorithm for robust
|
|
estimation.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
Estimated transformation matrix is:
|
|
\( \begin{bmatrix} \cos(\theta) \cdot s & -\sin(\theta) \cdot s & t_x \\
|
|
\sin(\theta) \cdot s & \cos(\theta) \cdot s & t_y
|
|
\end{bmatrix} \)
|
|
Where \( \theta \) is the rotation angle, \( s \) the scaling factor and \( t_x, t_y \) are
|
|
translations in \( x, y \) axes respectively.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffine2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffinePartial2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffinePartial2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method)</pre>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set.</dd>
|
|
<dd><code>to</code> - Second input 2D point set.</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers.</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.
|
|
a point as an inlier. Applies only to RANSAC.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation (4 degrees of freedom) matrix \(2 \times 3\) or
|
|
empty matrix if transformation could not be estimated.
|
|
|
|
The function estimates an optimal 2D affine transformation with 4 degrees of freedom limited to
|
|
combinations of translation, rotation, and uniform scaling. Uses the selected algorithm for robust
|
|
estimation.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
Estimated transformation matrix is:
|
|
\( \begin{bmatrix} \cos(\theta) \cdot s & -\sin(\theta) \cdot s & t_x \\
|
|
\sin(\theta) \cdot s & \cos(\theta) \cdot s & t_y
|
|
\end{bmatrix} \)
|
|
Where \( \theta \) is the rotation angle, \( s \) the scaling factor and \( t_x, t_y \) are
|
|
translations in \( x, y \) axes respectively.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffine2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffinePartial2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffinePartial2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold)</pre>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set.</dd>
|
|
<dd><code>to</code> - Second input 2D point set.</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers.</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider
|
|
a point as an inlier. Applies only to RANSAC.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation (4 degrees of freedom) matrix \(2 \times 3\) or
|
|
empty matrix if transformation could not be estimated.
|
|
|
|
The function estimates an optimal 2D affine transformation with 4 degrees of freedom limited to
|
|
combinations of translation, rotation, and uniform scaling. Uses the selected algorithm for robust
|
|
estimation.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
Estimated transformation matrix is:
|
|
\( \begin{bmatrix} \cos(\theta) \cdot s & -\sin(\theta) \cdot s & t_x \\
|
|
\sin(\theta) \cdot s & \cos(\theta) \cdot s & t_y
|
|
\end{bmatrix} \)
|
|
Where \( \theta \) is the rotation angle, \( s \) the scaling factor and \( t_x, t_y \) are
|
|
translations in \( x, y \) axes respectively.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffine2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffinePartial2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffinePartial2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters)</pre>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set.</dd>
|
|
<dd><code>to</code> - Second input 2D point set.</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers.</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider
|
|
a point as an inlier. Applies only to RANSAC.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation (4 degrees of freedom) matrix \(2 \times 3\) or
|
|
empty matrix if transformation could not be estimated.
|
|
|
|
The function estimates an optimal 2D affine transformation with 4 degrees of freedom limited to
|
|
combinations of translation, rotation, and uniform scaling. Uses the selected algorithm for robust
|
|
estimation.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
Estimated transformation matrix is:
|
|
\( \begin{bmatrix} \cos(\theta) \cdot s & -\sin(\theta) \cdot s & t_x \\
|
|
\sin(\theta) \cdot s & \cos(\theta) \cdot s & t_y
|
|
\end{bmatrix} \)
|
|
Where \( \theta \) is the rotation angle, \( s \) the scaling factor and \( t_x, t_y \) are
|
|
translations in \( x, y \) axes respectively.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffine2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffinePartial2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffinePartial2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters,
|
|
double confidence)</pre>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set.</dd>
|
|
<dd><code>to</code> - Second input 2D point set.</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers.</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider
|
|
a point as an inlier. Applies only to RANSAC.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.</dd>
|
|
<dd><code>confidence</code> - Confidence level, between 0 and 1, for the estimated transformation. Anything
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation (4 degrees of freedom) matrix \(2 \times 3\) or
|
|
empty matrix if transformation could not be estimated.
|
|
|
|
The function estimates an optimal 2D affine transformation with 4 degrees of freedom limited to
|
|
combinations of translation, rotation, and uniform scaling. Uses the selected algorithm for robust
|
|
estimation.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
Estimated transformation matrix is:
|
|
\( \begin{bmatrix} \cos(\theta) \cdot s & -\sin(\theta) \cdot s & t_x \\
|
|
\sin(\theta) \cdot s & \cos(\theta) \cdot s & t_y
|
|
\end{bmatrix} \)
|
|
Where \( \theta \) is the rotation angle, \( s \) the scaling factor and \( t_x, t_y \) are
|
|
translations in \( x, y \) axes respectively.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffine2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateAffinePartial2D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-long-double-long-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateAffinePartial2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> estimateAffinePartial2D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> from,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> to,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
long maxIters,
|
|
double confidence,
|
|
long refineIters)</pre>
|
|
<div class="block">Computes an optimal limited affine transformation with 4 degrees of freedom between
|
|
two 2D point sets.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>from</code> - First input 2D point set.</dd>
|
|
<dd><code>to</code> - Second input 2D point set.</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers.</dd>
|
|
<dd><code>method</code> - Robust method used to compute transformation. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
RANSAC is the default method.</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider
|
|
a point as an inlier. Applies only to RANSAC.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.</dd>
|
|
<dd><code>confidence</code> - Confidence level, between 0 and 1, for the estimated transformation. Anything
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.</dd>
|
|
<dd><code>refineIters</code> - Maximum number of iterations of refining algorithm (Levenberg-Marquardt).
|
|
Passing 0 will disable refining, so the output matrix will be output of robust method.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Output 2D affine transformation (4 degrees of freedom) matrix \(2 \times 3\) or
|
|
empty matrix if transformation could not be estimated.
|
|
|
|
The function estimates an optimal 2D affine transformation with 4 degrees of freedom limited to
|
|
combinations of translation, rotation, and uniform scaling. Uses the selected algorithm for robust
|
|
estimation.
|
|
|
|
The computed transformation is then refined further (using only inliers) with the
|
|
Levenberg-Marquardt method to reduce the re-projection error even more.
|
|
|
|
Estimated transformation matrix is:
|
|
\( \begin{bmatrix} \cos(\theta) \cdot s & -\sin(\theta) \cdot s & t_x \\
|
|
\sin(\theta) \cdot s & \cos(\theta) \cdot s & t_y
|
|
\end{bmatrix} \)
|
|
Where \( \theta \) is the rotation angle, \( s \) the scaling factor and \( t_x, t_y \) are
|
|
translations in \( x, y \) axes respectively.
|
|
|
|
<b>Note:</b>
|
|
The RANSAC method can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers.
|
|
|
|
SEE: estimateAffine2D, getAffineTransform</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateChessboardSharpness-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateChessboardSharpness</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Scalar.html" title="class in org.opencv.core">Scalar</a> estimateChessboardSharpness(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners)</pre>
|
|
<div class="block">Estimates the sharpness of a detected chessboard.
|
|
|
|
Image sharpness, as well as brightness, are a critical parameter for accuracte
|
|
camera calibration. For accessing these parameters for filtering out
|
|
problematic calibraiton images, this method calculates edge profiles by traveling from
|
|
black to white chessboard cell centers. Based on this, the number of pixels is
|
|
calculated required to transit from black to white. This width of the
|
|
transition area is a good indication of how sharp the chessboard is imaged
|
|
and should be below ~3.0 pixels.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Gray image used to find chessboard corners</dd>
|
|
<dd><code>patternSize</code> - Size of a found chessboard pattern</dd>
|
|
<dd><code>corners</code> - Corners found by #findChessboardCornersSB
|
|
|
|
The optional sharpness array is of type CV_32FC1 and has for each calculated
|
|
profile one row with the following five entries:
|
|
0 = x coordinate of the underlying edge in the image
|
|
1 = y coordinate of the underlying edge in the image
|
|
2 = width of the transition area (sharpness)
|
|
3 = signal strength in the black cell (min brightness)
|
|
4 = signal strength in the white cell (max brightness)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Scalar(average sharpness, average min brightness, average max brightness,0)</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateChessboardSharpness-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-float-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateChessboardSharpness</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Scalar.html" title="class in org.opencv.core">Scalar</a> estimateChessboardSharpness(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
float rise_distance)</pre>
|
|
<div class="block">Estimates the sharpness of a detected chessboard.
|
|
|
|
Image sharpness, as well as brightness, are a critical parameter for accuracte
|
|
camera calibration. For accessing these parameters for filtering out
|
|
problematic calibraiton images, this method calculates edge profiles by traveling from
|
|
black to white chessboard cell centers. Based on this, the number of pixels is
|
|
calculated required to transit from black to white. This width of the
|
|
transition area is a good indication of how sharp the chessboard is imaged
|
|
and should be below ~3.0 pixels.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Gray image used to find chessboard corners</dd>
|
|
<dd><code>patternSize</code> - Size of a found chessboard pattern</dd>
|
|
<dd><code>corners</code> - Corners found by #findChessboardCornersSB</dd>
|
|
<dd><code>rise_distance</code> - Rise distance 0.8 means 10% ... 90% of the final signal strength
|
|
|
|
The optional sharpness array is of type CV_32FC1 and has for each calculated
|
|
profile one row with the following five entries:
|
|
0 = x coordinate of the underlying edge in the image
|
|
1 = y coordinate of the underlying edge in the image
|
|
2 = width of the transition area (sharpness)
|
|
3 = signal strength in the black cell (min brightness)
|
|
4 = signal strength in the white cell (max brightness)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Scalar(average sharpness, average min brightness, average max brightness,0)</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateChessboardSharpness-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-float-boolean-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateChessboardSharpness</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Scalar.html" title="class in org.opencv.core">Scalar</a> estimateChessboardSharpness(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
float rise_distance,
|
|
boolean vertical)</pre>
|
|
<div class="block">Estimates the sharpness of a detected chessboard.
|
|
|
|
Image sharpness, as well as brightness, are a critical parameter for accuracte
|
|
camera calibration. For accessing these parameters for filtering out
|
|
problematic calibraiton images, this method calculates edge profiles by traveling from
|
|
black to white chessboard cell centers. Based on this, the number of pixels is
|
|
calculated required to transit from black to white. This width of the
|
|
transition area is a good indication of how sharp the chessboard is imaged
|
|
and should be below ~3.0 pixels.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Gray image used to find chessboard corners</dd>
|
|
<dd><code>patternSize</code> - Size of a found chessboard pattern</dd>
|
|
<dd><code>corners</code> - Corners found by #findChessboardCornersSB</dd>
|
|
<dd><code>rise_distance</code> - Rise distance 0.8 means 10% ... 90% of the final signal strength</dd>
|
|
<dd><code>vertical</code> - By default edge responses for horizontal lines are calculated
|
|
|
|
The optional sharpness array is of type CV_32FC1 and has for each calculated
|
|
profile one row with the following five entries:
|
|
0 = x coordinate of the underlying edge in the image
|
|
1 = y coordinate of the underlying edge in the image
|
|
2 = width of the transition area (sharpness)
|
|
3 = signal strength in the black cell (min brightness)
|
|
4 = signal strength in the white cell (max brightness)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Scalar(average sharpness, average min brightness, average max brightness,0)</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateChessboardSharpness-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-float-boolean-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateChessboardSharpness</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Scalar.html" title="class in org.opencv.core">Scalar</a> estimateChessboardSharpness(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
float rise_distance,
|
|
boolean vertical,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> sharpness)</pre>
|
|
<div class="block">Estimates the sharpness of a detected chessboard.
|
|
|
|
Image sharpness, as well as brightness, are a critical parameter for accuracte
|
|
camera calibration. For accessing these parameters for filtering out
|
|
problematic calibraiton images, this method calculates edge profiles by traveling from
|
|
black to white chessboard cell centers. Based on this, the number of pixels is
|
|
calculated required to transit from black to white. This width of the
|
|
transition area is a good indication of how sharp the chessboard is imaged
|
|
and should be below ~3.0 pixels.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Gray image used to find chessboard corners</dd>
|
|
<dd><code>patternSize</code> - Size of a found chessboard pattern</dd>
|
|
<dd><code>corners</code> - Corners found by #findChessboardCornersSB</dd>
|
|
<dd><code>rise_distance</code> - Rise distance 0.8 means 10% ... 90% of the final signal strength</dd>
|
|
<dd><code>vertical</code> - By default edge responses for horizontal lines are calculated</dd>
|
|
<dd><code>sharpness</code> - Optional output array with a sharpness value for calculated edge responses (see description)
|
|
|
|
The optional sharpness array is of type CV_32FC1 and has for each calculated
|
|
profile one row with the following five entries:
|
|
0 = x coordinate of the underlying edge in the image
|
|
1 = y coordinate of the underlying edge in the image
|
|
2 = width of the transition area (sharpness)
|
|
3 = signal strength in the black cell (min brightness)
|
|
4 = signal strength in the white cell (max brightness)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>Scalar(average sharpness, average min brightness, average max brightness,0)</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateTranslation3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateTranslation3D</h4>
|
|
<pre>public static int estimateTranslation3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</pre>
|
|
<div class="block">Computes an optimal translation between two 3D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
z\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
Z\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
b_3\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - First input 3D point set containing \((X,Y,Z)\).</dd>
|
|
<dd><code>dst</code> - Second input 3D point set containing \((x,y,z)\).</dd>
|
|
<dd><code>out</code> - Output 3D translation vector \(3 \times 1\) of the form
|
|
\(
|
|
\begin{bmatrix}
|
|
b_1 \\
|
|
b_2 \\
|
|
b_3 \\
|
|
\end{bmatrix}
|
|
\)</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).
|
|
an inlier.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
|
|
The function estimates an optimal 3D translation between two 3D point sets using the
|
|
RANSAC algorithm.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateTranslation3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateTranslation3D</h4>
|
|
<pre>public static int estimateTranslation3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
double ransacThreshold)</pre>
|
|
<div class="block">Computes an optimal translation between two 3D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
z\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
Z\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
b_3\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - First input 3D point set containing \((X,Y,Z)\).</dd>
|
|
<dd><code>dst</code> - Second input 3D point set containing \((x,y,z)\).</dd>
|
|
<dd><code>out</code> - Output 3D translation vector \(3 \times 1\) of the form
|
|
\(
|
|
\begin{bmatrix}
|
|
b_1 \\
|
|
b_2 \\
|
|
b_3 \\
|
|
\end{bmatrix}
|
|
\)</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).</dd>
|
|
<dd><code>ransacThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider a point as
|
|
an inlier.
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
|
|
The function estimates an optimal 3D translation between two 3D point sets using the
|
|
RANSAC algorithm.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="estimateTranslation3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>estimateTranslation3D</h4>
|
|
<pre>public static int estimateTranslation3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> out,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
double ransacThreshold,
|
|
double confidence)</pre>
|
|
<div class="block">Computes an optimal translation between two 3D point sets.
|
|
|
|
It computes
|
|
\(
|
|
\begin{bmatrix}
|
|
x\\
|
|
y\\
|
|
z\\
|
|
\end{bmatrix}
|
|
=
|
|
\begin{bmatrix}
|
|
X\\
|
|
Y\\
|
|
Z\\
|
|
\end{bmatrix}
|
|
+
|
|
\begin{bmatrix}
|
|
b_1\\
|
|
b_2\\
|
|
b_3\\
|
|
\end{bmatrix}
|
|
\)</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - First input 3D point set containing \((X,Y,Z)\).</dd>
|
|
<dd><code>dst</code> - Second input 3D point set containing \((x,y,z)\).</dd>
|
|
<dd><code>out</code> - Output 3D translation vector \(3 \times 1\) of the form
|
|
\(
|
|
\begin{bmatrix}
|
|
b_1 \\
|
|
b_2 \\
|
|
b_3 \\
|
|
\end{bmatrix}
|
|
\)</dd>
|
|
<dd><code>inliers</code> - Output vector indicating which points are inliers (1-inlier, 0-outlier).</dd>
|
|
<dd><code>ransacThreshold</code> - Maximum reprojection error in the RANSAC algorithm to consider a point as
|
|
an inlier.</dd>
|
|
<dd><code>confidence</code> - Confidence level, between 0 and 1, for the estimated transformation. Anything
|
|
between 0.95 and 0.99 is usually good enough. Values too close to 1 can slow down the estimation
|
|
significantly. Values lower than 0.8-0.9 can result in an incorrectly estimated transformation.
|
|
|
|
The function estimates an optimal 3D translation between two 3D point sets using the
|
|
RANSAC algorithm.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="filterHomographyDecompByVisibleRefpoints-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>filterHomographyDecompByVisibleRefpoints</h4>
|
|
<pre>public static void filterHomographyDecompByVisibleRefpoints(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rotations,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> normals,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> beforePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> afterPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> possibleSolutions)</pre>
|
|
<div class="block">Filters homography decompositions based on additional information.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rotations</code> - Vector of rotation matrices.</dd>
|
|
<dd><code>normals</code> - Vector of plane normal matrices.</dd>
|
|
<dd><code>beforePoints</code> - Vector of (rectified) visible reference points before the homography is applied</dd>
|
|
<dd><code>afterPoints</code> - Vector of (rectified) visible reference points after the homography is applied</dd>
|
|
<dd><code>possibleSolutions</code> - Vector of int indices representing the viable solution set after filtering
|
|
|
|
This function is intended to filter the output of the #decomposeHomographyMat based on additional
|
|
information as described in CITE: Malis . The summary of the method: the #decomposeHomographyMat function
|
|
returns 2 unique solutions and their "opposites" for a total of 4 solutions. If we have access to the
|
|
sets of points visible in the camera frame before and after the homography transformation is applied,
|
|
we can determine which are the true potential solutions and which are the opposites by verifying which
|
|
homographies are consistent with all visible reference points being in front of the camera. The inputs
|
|
are left unchanged; the filtered solution set is returned as indices into the existing one.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="filterHomographyDecompByVisibleRefpoints-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>filterHomographyDecompByVisibleRefpoints</h4>
|
|
<pre>public static void filterHomographyDecompByVisibleRefpoints(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rotations,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> normals,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> beforePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> afterPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> possibleSolutions,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pointsMask)</pre>
|
|
<div class="block">Filters homography decompositions based on additional information.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>rotations</code> - Vector of rotation matrices.</dd>
|
|
<dd><code>normals</code> - Vector of plane normal matrices.</dd>
|
|
<dd><code>beforePoints</code> - Vector of (rectified) visible reference points before the homography is applied</dd>
|
|
<dd><code>afterPoints</code> - Vector of (rectified) visible reference points after the homography is applied</dd>
|
|
<dd><code>possibleSolutions</code> - Vector of int indices representing the viable solution set after filtering</dd>
|
|
<dd><code>pointsMask</code> - optional Mat/Vector of 8u type representing the mask for the inliers as given by the #findHomography function
|
|
|
|
This function is intended to filter the output of the #decomposeHomographyMat based on additional
|
|
information as described in CITE: Malis . The summary of the method: the #decomposeHomographyMat function
|
|
returns 2 unique solutions and their "opposites" for a total of 4 solutions. If we have access to the
|
|
sets of points visible in the camera frame before and after the homography transformation is applied,
|
|
we can determine which are the true potential solutions and which are the opposites by verifying which
|
|
homographies are consistent with all visible reference points being in front of the camera. The inputs
|
|
are left unchanged; the filtered solution set is returned as indices into the existing one.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="filterSpeckles-org.opencv.core.Mat-double-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>filterSpeckles</h4>
|
|
<pre>public static void filterSpeckles(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> img,
|
|
double newVal,
|
|
int maxSpeckleSize,
|
|
double maxDiff)</pre>
|
|
<div class="block">Filters off small noise blobs (speckles) in the disparity map</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>img</code> - The input 16-bit signed disparity image</dd>
|
|
<dd><code>newVal</code> - The disparity value used to paint-off the speckles</dd>
|
|
<dd><code>maxSpeckleSize</code> - The maximum speckle size to consider it a speckle. Larger blobs are not
|
|
affected by the algorithm</dd>
|
|
<dd><code>maxDiff</code> - Maximum difference between neighbor disparity pixels to put them into the same
|
|
blob. Note that since StereoBM, StereoSGBM and may be other algorithms return a fixed-point
|
|
disparity map, where disparity values are multiplied by 16, this scale factor should be taken into
|
|
account when specifying this parameter value.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="filterSpeckles-org.opencv.core.Mat-double-int-double-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>filterSpeckles</h4>
|
|
<pre>public static void filterSpeckles(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> img,
|
|
double newVal,
|
|
int maxSpeckleSize,
|
|
double maxDiff,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> buf)</pre>
|
|
<div class="block">Filters off small noise blobs (speckles) in the disparity map</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>img</code> - The input 16-bit signed disparity image</dd>
|
|
<dd><code>newVal</code> - The disparity value used to paint-off the speckles</dd>
|
|
<dd><code>maxSpeckleSize</code> - The maximum speckle size to consider it a speckle. Larger blobs are not
|
|
affected by the algorithm</dd>
|
|
<dd><code>maxDiff</code> - Maximum difference between neighbor disparity pixels to put them into the same
|
|
blob. Note that since StereoBM, StereoSGBM and may be other algorithms return a fixed-point
|
|
disparity map, where disparity values are multiplied by 16, this scale factor should be taken into
|
|
account when specifying this parameter value.</dd>
|
|
<dd><code>buf</code> - The optional temporary buffer to avoid memory allocation within the function.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="find4QuadCornerSubpix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>find4QuadCornerSubpix</h4>
|
|
<pre>public static boolean find4QuadCornerSubpix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> img,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> region_size)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findChessboardCorners-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.MatOfPoint2f-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findChessboardCorners</h4>
|
|
<pre>public static boolean findChessboardCorners(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> corners)</pre>
|
|
<div class="block">Finds the positions of internal corners of the chessboard.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Source chessboard view. It must be an 8-bit grayscale or color image.</dd>
|
|
<dd><code>patternSize</code> - Number of inner corners per a chessboard row and column
|
|
( patternSize = cv::Size(points_per_row,points_per_colum) = cv::Size(columns,rows) ).</dd>
|
|
<dd><code>corners</code> - Output array of detected corners.
|
|
<ul>
|
|
<li>
|
|
REF: CALIB_CB_ADAPTIVE_THRESH Use adaptive thresholding to convert the image to black
|
|
and white, rather than a fixed threshold level (computed from the average image brightness).
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_NORMALIZE_IMAGE Normalize the image gamma with equalizeHist before
|
|
applying fixed or adaptive thresholding.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_FILTER_QUADS Use additional criteria (like contour area, perimeter,
|
|
square-like shape) to filter out false quads extracted at the contour retrieval stage.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_FAST_CHECK Run a fast check on the image that looks for chessboard corners,
|
|
and shortcut the call if none is found. This can drastically speed up the call in the
|
|
degenerate condition when no chessboard is observed.
|
|
</li>
|
|
</ul>
|
|
|
|
The function attempts to determine whether the input image is a view of the chessboard pattern and
|
|
locate the internal chessboard corners. The function returns a non-zero value if all of the corners
|
|
are found and they are placed in a certain order (row by row, left to right in every row).
|
|
Otherwise, if the function fails to find all the corners or reorder them, it returns 0. For example,
|
|
a regular chessboard has 8 x 8 squares and 7 x 7 internal corners, that is, points where the black
|
|
squares touch each other. The detected coordinates are approximate, and to determine their positions
|
|
more accurately, the function calls cornerSubPix. You also may use the function cornerSubPix with
|
|
different parameters if returned coordinates are not accurate enough.
|
|
|
|
Sample usage of detecting and drawing chessboard corners: :
|
|
<code>
|
|
Size patternsize(8,6); //interior number of corners
|
|
Mat gray = ....; //source image
|
|
vector<Point2f> corners; //this will be filled by the detected corners
|
|
|
|
//CALIB_CB_FAST_CHECK saves a lot of time on images
|
|
//that do not contain any chessboard corners
|
|
bool patternfound = findChessboardCorners(gray, patternsize, corners,
|
|
CALIB_CB_ADAPTIVE_THRESH + CALIB_CB_NORMALIZE_IMAGE
|
|
+ CALIB_CB_FAST_CHECK);
|
|
|
|
if(patternfound)
|
|
cornerSubPix(gray, corners, Size(11, 11), Size(-1, -1),
|
|
TermCriteria(CV_TERMCRIT_EPS + CV_TERMCRIT_ITER, 30, 0.1));
|
|
|
|
drawChessboardCorners(img, patternsize, Mat(corners), patternfound);
|
|
</code>
|
|
<b>Note:</b> The function requires white space (like a square-thick border, the wider the better) around
|
|
the board to make the detection more robust in various environments. Otherwise, if there is no
|
|
border and the background is dark, the outer black squares cannot be segmented properly and so the
|
|
square grouping and ordering algorithm fails.
|
|
|
|
Use gen_pattern.py (REF: tutorial_camera_calibration_pattern) to create checkerboard.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findChessboardCorners-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.MatOfPoint2f-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findChessboardCorners</h4>
|
|
<pre>public static boolean findChessboardCorners(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> corners,
|
|
int flags)</pre>
|
|
<div class="block">Finds the positions of internal corners of the chessboard.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Source chessboard view. It must be an 8-bit grayscale or color image.</dd>
|
|
<dd><code>patternSize</code> - Number of inner corners per a chessboard row and column
|
|
( patternSize = cv::Size(points_per_row,points_per_colum) = cv::Size(columns,rows) ).</dd>
|
|
<dd><code>corners</code> - Output array of detected corners.</dd>
|
|
<dd><code>flags</code> - Various operation flags that can be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: CALIB_CB_ADAPTIVE_THRESH Use adaptive thresholding to convert the image to black
|
|
and white, rather than a fixed threshold level (computed from the average image brightness).
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_NORMALIZE_IMAGE Normalize the image gamma with equalizeHist before
|
|
applying fixed or adaptive thresholding.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_FILTER_QUADS Use additional criteria (like contour area, perimeter,
|
|
square-like shape) to filter out false quads extracted at the contour retrieval stage.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_FAST_CHECK Run a fast check on the image that looks for chessboard corners,
|
|
and shortcut the call if none is found. This can drastically speed up the call in the
|
|
degenerate condition when no chessboard is observed.
|
|
</li>
|
|
</ul>
|
|
|
|
The function attempts to determine whether the input image is a view of the chessboard pattern and
|
|
locate the internal chessboard corners. The function returns a non-zero value if all of the corners
|
|
are found and they are placed in a certain order (row by row, left to right in every row).
|
|
Otherwise, if the function fails to find all the corners or reorder them, it returns 0. For example,
|
|
a regular chessboard has 8 x 8 squares and 7 x 7 internal corners, that is, points where the black
|
|
squares touch each other. The detected coordinates are approximate, and to determine their positions
|
|
more accurately, the function calls cornerSubPix. You also may use the function cornerSubPix with
|
|
different parameters if returned coordinates are not accurate enough.
|
|
|
|
Sample usage of detecting and drawing chessboard corners: :
|
|
<code>
|
|
Size patternsize(8,6); //interior number of corners
|
|
Mat gray = ....; //source image
|
|
vector<Point2f> corners; //this will be filled by the detected corners
|
|
|
|
//CALIB_CB_FAST_CHECK saves a lot of time on images
|
|
//that do not contain any chessboard corners
|
|
bool patternfound = findChessboardCorners(gray, patternsize, corners,
|
|
CALIB_CB_ADAPTIVE_THRESH + CALIB_CB_NORMALIZE_IMAGE
|
|
+ CALIB_CB_FAST_CHECK);
|
|
|
|
if(patternfound)
|
|
cornerSubPix(gray, corners, Size(11, 11), Size(-1, -1),
|
|
TermCriteria(CV_TERMCRIT_EPS + CV_TERMCRIT_ITER, 30, 0.1));
|
|
|
|
drawChessboardCorners(img, patternsize, Mat(corners), patternfound);
|
|
</code>
|
|
<b>Note:</b> The function requires white space (like a square-thick border, the wider the better) around
|
|
the board to make the detection more robust in various environments. Otherwise, if there is no
|
|
border and the background is dark, the outer black squares cannot be segmented properly and so the
|
|
square grouping and ordering algorithm fails.
|
|
|
|
Use gen_pattern.py (REF: tutorial_camera_calibration_pattern) to create checkerboard.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findChessboardCornersSB-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findChessboardCornersSB</h4>
|
|
<pre>public static boolean findChessboardCornersSB(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findChessboardCornersSB-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findChessboardCornersSB</h4>
|
|
<pre>public static boolean findChessboardCornersSB(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
int flags)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findChessboardCornersSBWithMeta-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-int-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findChessboardCornersSBWithMeta</h4>
|
|
<pre>public static boolean findChessboardCornersSBWithMeta(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> corners,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> meta)</pre>
|
|
<div class="block">Finds the positions of internal corners of the chessboard using a sector based approach.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>image</code> - Source chessboard view. It must be an 8-bit grayscale or color image.</dd>
|
|
<dd><code>patternSize</code> - Number of inner corners per a chessboard row and column
|
|
( patternSize = cv::Size(points_per_row,points_per_colum) = cv::Size(columns,rows) ).</dd>
|
|
<dd><code>corners</code> - Output array of detected corners.</dd>
|
|
<dd><code>flags</code> - Various operation flags that can be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: CALIB_CB_NORMALIZE_IMAGE Normalize the image gamma with equalizeHist before detection.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_EXHAUSTIVE Run an exhaustive search to improve detection rate.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_ACCURACY Up sample input image to improve sub-pixel accuracy due to aliasing effects.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_LARGER The detected pattern is allowed to be larger than patternSize (see description).
|
|
</li>
|
|
<li>
|
|
REF: CALIB_CB_MARKER The detected pattern must have a marker (see description).
|
|
This should be used if an accurate camera calibration is required.</dd>
|
|
<dd><code>meta</code> - Optional output arrray of detected corners (CV_8UC1 and size = cv::Size(columns,rows)).
|
|
Each entry stands for one corner of the pattern and can have one of the following values:
|
|
</li>
|
|
<li>
|
|
0 = no meta data attached
|
|
</li>
|
|
<li>
|
|
1 = left-top corner of a black cell
|
|
</li>
|
|
<li>
|
|
2 = left-top corner of a white cell
|
|
</li>
|
|
<li>
|
|
3 = left-top corner of a black cell with a white marker dot
|
|
</li>
|
|
<li>
|
|
4 = left-top corner of a white cell with a black marker dot (pattern origin in case of markers otherwise first corner)
|
|
</li>
|
|
</ul>
|
|
|
|
The function is analog to #findChessboardCorners but uses a localized radon
|
|
transformation approximated by box filters being more robust to all sort of
|
|
noise, faster on larger images and is able to directly return the sub-pixel
|
|
position of the internal chessboard corners. The Method is based on the paper
|
|
CITE: duda2018 "Accurate Detection and Localization of Checkerboard Corners for
|
|
Calibration" demonstrating that the returned sub-pixel positions are more
|
|
accurate than the one returned by cornerSubPix allowing a precise camera
|
|
calibration for demanding applications.
|
|
|
|
In the case, the flags REF: CALIB_CB_LARGER or REF: CALIB_CB_MARKER are given,
|
|
the result can be recovered from the optional meta array. Both flags are
|
|
helpful to use calibration patterns exceeding the field of view of the camera.
|
|
These oversized patterns allow more accurate calibrations as corners can be
|
|
utilized, which are as close as possible to the image borders. For a
|
|
consistent coordinate system across all images, the optional marker (see image
|
|
below) can be used to move the origin of the board to the location where the
|
|
black circle is located.
|
|
|
|
<b>Note:</b> The function requires a white boarder with roughly the same width as one
|
|
of the checkerboard fields around the whole board to improve the detection in
|
|
various environments. In addition, because of the localized radon
|
|
transformation it is beneficial to use round corners for the field corners
|
|
which are located on the outside of the board. The following figure illustrates
|
|
a sample checkerboard optimized for the detection. However, any other checkerboard
|
|
can be used as well.
|
|
|
|
Use gen_pattern.py (REF: tutorial_camera_calibration_pattern) to create checkerboard.
|
|
</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findCirclesGrid-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findCirclesGrid</h4>
|
|
<pre>public static boolean findCirclesGrid(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> centers)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findCirclesGrid-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findCirclesGrid</h4>
|
|
<pre>public static boolean findCirclesGrid(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> image,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> patternSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> centers,
|
|
int flags)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .
|
|
are feature points from cameras with same focal length and principal point.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>focal</code> - focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>focal</code> - focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.</dd>
|
|
<dd><code>pp</code> - principal point of the camera.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>focal</code> - focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.</dd>
|
|
<dd><code>pp</code> - principal point of the camera.</dd>
|
|
<dd><code>method</code> - Method for computing a fundamental matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method,
|
|
double prob)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>focal</code> - focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.</dd>
|
|
<dd><code>pp</code> - principal point of the camera.</dd>
|
|
<dd><code>method</code> - Method for computing a fundamental matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-double-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method,
|
|
double prob,
|
|
double threshold)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>focal</code> - focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.</dd>
|
|
<dd><code>pp</code> - principal point of the camera.</dd>
|
|
<dd><code>method</code> - Method for computing a fundamental matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-double-double-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
int maxIters)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>focal</code> - focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.</dd>
|
|
<dd><code>pp</code> - principal point of the camera.</dd>
|
|
<dd><code>method</code> - Method for computing a fundamental matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.
|
|
</li>
|
|
</ul>
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-int-double-double-int-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
int maxIters,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>focal</code> - focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.</dd>
|
|
<dd><code>pp</code> - principal point of the camera.</dd>
|
|
<dd><code>method</code> - Method for computing a fundamental matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>mask</code> - Output array of N elements, every element of which is set to 0 for outliers and to 1
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.
|
|
</li>
|
|
</ul>
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera intrinsic matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera intrinsic matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method,
|
|
double prob)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera intrinsic matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method,
|
|
double prob,
|
|
double threshold)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera intrinsic matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
int maxIters)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera intrinsic matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-int-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
int maxIters,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera intrinsic matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.</dd>
|
|
<dd><code>mask</code> - Output array of N elements, every element of which is set to 0 for outliers and to 1
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>cameraMatrix2</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>distCoeffs1</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>distCoeffs2</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
int method)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>cameraMatrix2</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>distCoeffs1</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>distCoeffs2</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
int method,
|
|
double prob)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>cameraMatrix2</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>distCoeffs1</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>distCoeffs2</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
int method,
|
|
double prob,
|
|
double threshold)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>cameraMatrix2</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>distCoeffs1</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>distCoeffs2</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
<div class="block">Calculates an essential matrix from the corresponding points in two images from potentially two different cameras.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N (N >= 5) 2D points from the first image. The point coordinates should
|
|
be floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>cameraMatrix2</code> - Camera matrix \(K = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera matrix. If this assumption does not hold for your use case, use
|
|
#undistortPoints with <code>P = cv::NoArray()</code> for both cameras to transform image points
|
|
to normalized image coordinates, which are valid for the identity camera matrix. When
|
|
passing these coordinates, pass the identity matrix for this parameter.</dd>
|
|
<dd><code>distCoeffs1</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>distCoeffs2</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.</dd>
|
|
<dd><code>mask</code> - Output array of N elements, every element of which is set to 0 for outliers and to 1
|
|
for the other points. The array is computed only in the RANSAC and LMedS methods.
|
|
</li>
|
|
</ul>
|
|
|
|
This function estimates essential matrix based on the five-point algorithm solver in CITE: Nister03 .
|
|
CITE: SteweniusCFS is also a related. The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T K^{-T} E K^{-1} [p_1; 1] = 0\)
|
|
|
|
where \(E\) is an essential matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively. The result of this function may be passed further to
|
|
#decomposeEssentialMat or #recoverPose to recover the relative pose between cameras.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findEssentialMat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findEssentialMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findEssentialMat(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dist_coeff1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dist_coeff2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findFundamentalMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findFundamentalMat(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findFundamentalMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findFundamentalMat(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findFundamentalMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findFundamentalMat(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findFundamentalMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findFundamentalMat(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
double confidence)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-double-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findFundamentalMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findFundamentalMat(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
double confidence,
|
|
int maxIters)</pre>
|
|
<div class="block">Calculates a fundamental matrix from the corresponding points in two images.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>method</code> - Method for computing a fundamental matrix.
|
|
<ul>
|
|
<li>
|
|
REF: FM_7POINT for a 7-point algorithm. \(N = 7\)
|
|
</li>
|
|
<li>
|
|
REF: FM_8POINT for an 8-point algorithm. \(N \ge 8\)
|
|
</li>
|
|
<li>
|
|
REF: FM_RANSAC for the RANSAC algorithm. \(N \ge 8\)
|
|
</li>
|
|
<li>
|
|
REF: FM_LMEDS for the LMedS algorithm. \(N \ge 8\)</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Parameter used only for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.</dd>
|
|
<dd><code>confidence</code> - Parameter used for the RANSAC and LMedS methods only. It specifies a desirable level
|
|
of confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.
|
|
</li>
|
|
</ul>
|
|
|
|
The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T F [p_1; 1] = 0\)
|
|
|
|
where \(F\) is a fundamental matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively.
|
|
|
|
The function calculates the fundamental matrix using one of four methods listed above and returns
|
|
the found fundamental matrix. Normally just one matrix is found. But in case of the 7-point
|
|
algorithm, the function may return up to 3 solutions ( \(9 \times 3\) matrix that stores all 3
|
|
matrices sequentially).
|
|
|
|
The calculated fundamental matrix may be passed further to computeCorrespondEpilines that finds the
|
|
epipolar lines corresponding to the specified points. It can also be passed to
|
|
#stereoRectifyUncalibrated to compute the rectification transformation. :
|
|
<code>
|
|
// Example. Estimation of fundamental matrix using the RANSAC algorithm
|
|
int point_count = 100;
|
|
vector<Point2f> points1(point_count);
|
|
vector<Point2f> points2(point_count);
|
|
|
|
// initialize the points here ...
|
|
for( int i = 0; i < point_count; i++ )
|
|
{
|
|
points1[i] = ...;
|
|
points2[i] = ...;
|
|
}
|
|
|
|
Mat fundamental_matrix =
|
|
findFundamentalMat(points1, points2, FM_RANSAC, 3, 0.99);
|
|
</code></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-double-int-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findFundamentalMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findFundamentalMat(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
double confidence,
|
|
int maxIters,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
<div class="block">Calculates a fundamental matrix from the corresponding points in two images.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>method</code> - Method for computing a fundamental matrix.
|
|
<ul>
|
|
<li>
|
|
REF: FM_7POINT for a 7-point algorithm. \(N = 7\)
|
|
</li>
|
|
<li>
|
|
REF: FM_8POINT for an 8-point algorithm. \(N \ge 8\)
|
|
</li>
|
|
<li>
|
|
REF: FM_RANSAC for the RANSAC algorithm. \(N \ge 8\)
|
|
</li>
|
|
<li>
|
|
REF: FM_LMEDS for the LMedS algorithm. \(N \ge 8\)</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Parameter used only for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.</dd>
|
|
<dd><code>confidence</code> - Parameter used for the RANSAC and LMedS methods only. It specifies a desirable level
|
|
of confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>mask</code> - optional output mask</dd>
|
|
<dd><code>maxIters</code> - The maximum number of robust method iterations.
|
|
</li>
|
|
</ul>
|
|
|
|
The epipolar geometry is described by the following equation:
|
|
|
|
\([p_2; 1]^T F [p_1; 1] = 0\)
|
|
|
|
where \(F\) is a fundamental matrix, \(p_1\) and \(p_2\) are corresponding points in the first and the
|
|
second images, respectively.
|
|
|
|
The function calculates the fundamental matrix using one of four methods listed above and returns
|
|
the found fundamental matrix. Normally just one matrix is found. But in case of the 7-point
|
|
algorithm, the function may return up to 3 solutions ( \(9 \times 3\) matrix that stores all 3
|
|
matrices sequentially).
|
|
|
|
The calculated fundamental matrix may be passed further to computeCorrespondEpilines that finds the
|
|
epipolar lines corresponding to the specified points. It can also be passed to
|
|
#stereoRectifyUncalibrated to compute the rectification transformation. :
|
|
<code>
|
|
// Example. Estimation of fundamental matrix using the RANSAC algorithm
|
|
int point_count = 100;
|
|
vector<Point2f> points1(point_count);
|
|
vector<Point2f> points2(point_count);
|
|
|
|
// initialize the points here ...
|
|
for( int i = 0; i < point_count; i++ )
|
|
{
|
|
points1[i] = ...;
|
|
points2[i] = ...;
|
|
}
|
|
|
|
Mat fundamental_matrix =
|
|
findFundamentalMat(points1, points2, FM_RANSAC, 3, 0.99);
|
|
</code></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-double-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findFundamentalMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findFundamentalMat(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
double confidence,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findFundamentalMat-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findFundamentalMat</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findFundamentalMat(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points1,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findHomography</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findHomography(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints)</pre>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>srcPoints</code> - Coordinates of the points in the original plane, a matrix of the type CV_32FC2
|
|
or vector<Point2f> .</dd>
|
|
<dd><code>dstPoints</code> - Coordinates of the points in the target plane, a matrix of the type CV_32FC2 or
|
|
a vector<Point2f> .
|
|
<ul>
|
|
<li>
|
|
<b>0</b> - a regular method using all the points, i.e., the least squares method
|
|
</li>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
</li>
|
|
<li>
|
|
REF: RHO - PROSAC-based robust method
|
|
(used in the RANSAC and RHO methods only). That is, if
|
|
\(\| \texttt{dstPoints} _i - \texttt{convertPointsHomogeneous} ( \texttt{H} * \texttt{srcPoints} _i) \|_2 > \texttt{ransacReprojThreshold}\)
|
|
then the point \(i\) is considered as an outlier. If srcPoints and dstPoints are measured in pixels,
|
|
it usually makes sense to set this parameter somewhere in the range of 1 to 10.
|
|
mask values are ignored.
|
|
</li>
|
|
</ul>
|
|
|
|
The function finds and returns the perspective transformation \(H\) between the source and the
|
|
destination planes:
|
|
|
|
\(s_i \vecthree{x'_i}{y'_i}{1} \sim H \vecthree{x_i}{y_i}{1}\)
|
|
|
|
so that the back-projection error
|
|
|
|
\(\sum _i \left ( x'_i- \frac{h_{11} x_i + h_{12} y_i + h_{13}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2+ \left ( y'_i- \frac{h_{21} x_i + h_{22} y_i + h_{23}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2\)
|
|
|
|
is minimized. If the parameter method is set to the default value 0, the function uses all the point
|
|
pairs to compute an initial homography estimate with a simple least-squares scheme.
|
|
|
|
However, if not all of the point pairs ( \(srcPoints_i\), \(dstPoints_i\) ) fit the rigid perspective
|
|
transformation (that is, there are some outliers), this initial estimate will be poor. In this case,
|
|
you can use one of the three robust methods. The methods RANSAC, LMeDS and RHO try many different
|
|
random subsets of the corresponding point pairs (of four pairs each, collinear pairs are discarded), estimate the homography matrix
|
|
using this subset and a simple least-squares algorithm, and then compute the quality/goodness of the
|
|
computed homography (which is the number of inliers for RANSAC or the least median re-projection error for
|
|
LMeDS). The best subset is then used to produce the initial estimate of the homography matrix and
|
|
the mask of inliers/outliers.
|
|
|
|
Regardless of the method, robust or not, the computed homography matrix is refined further (using
|
|
inliers only in case of a robust method) with the Levenberg-Marquardt method to reduce the
|
|
re-projection error even more.
|
|
|
|
The methods RANSAC and RHO can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers. Finally, if there are no outliers and the
|
|
noise is rather small, use the default method (method=0).
|
|
|
|
The function is used to find initial intrinsic and extrinsic matrices. Homography matrix is
|
|
determined up to a scale. Thus, it is normalized so that \(h_{33}=1\). Note that whenever an \(H\) matrix
|
|
cannot be estimated, an empty one will be returned.
|
|
|
|
SEE:
|
|
getAffineTransform, estimateAffine2D, estimateAffinePartial2D, getPerspectiveTransform, warpPerspective,
|
|
perspectiveTransform</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findHomography</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findHomography(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method)</pre>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>srcPoints</code> - Coordinates of the points in the original plane, a matrix of the type CV_32FC2
|
|
or vector<Point2f> .</dd>
|
|
<dd><code>dstPoints</code> - Coordinates of the points in the target plane, a matrix of the type CV_32FC2 or
|
|
a vector<Point2f> .</dd>
|
|
<dd><code>method</code> - Method used to compute a homography matrix. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
<b>0</b> - a regular method using all the points, i.e., the least squares method
|
|
</li>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
</li>
|
|
<li>
|
|
REF: RHO - PROSAC-based robust method
|
|
(used in the RANSAC and RHO methods only). That is, if
|
|
\(\| \texttt{dstPoints} _i - \texttt{convertPointsHomogeneous} ( \texttt{H} * \texttt{srcPoints} _i) \|_2 > \texttt{ransacReprojThreshold}\)
|
|
then the point \(i\) is considered as an outlier. If srcPoints and dstPoints are measured in pixels,
|
|
it usually makes sense to set this parameter somewhere in the range of 1 to 10.
|
|
mask values are ignored.
|
|
</li>
|
|
</ul>
|
|
|
|
The function finds and returns the perspective transformation \(H\) between the source and the
|
|
destination planes:
|
|
|
|
\(s_i \vecthree{x'_i}{y'_i}{1} \sim H \vecthree{x_i}{y_i}{1}\)
|
|
|
|
so that the back-projection error
|
|
|
|
\(\sum _i \left ( x'_i- \frac{h_{11} x_i + h_{12} y_i + h_{13}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2+ \left ( y'_i- \frac{h_{21} x_i + h_{22} y_i + h_{23}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2\)
|
|
|
|
is minimized. If the parameter method is set to the default value 0, the function uses all the point
|
|
pairs to compute an initial homography estimate with a simple least-squares scheme.
|
|
|
|
However, if not all of the point pairs ( \(srcPoints_i\), \(dstPoints_i\) ) fit the rigid perspective
|
|
transformation (that is, there are some outliers), this initial estimate will be poor. In this case,
|
|
you can use one of the three robust methods. The methods RANSAC, LMeDS and RHO try many different
|
|
random subsets of the corresponding point pairs (of four pairs each, collinear pairs are discarded), estimate the homography matrix
|
|
using this subset and a simple least-squares algorithm, and then compute the quality/goodness of the
|
|
computed homography (which is the number of inliers for RANSAC or the least median re-projection error for
|
|
LMeDS). The best subset is then used to produce the initial estimate of the homography matrix and
|
|
the mask of inliers/outliers.
|
|
|
|
Regardless of the method, robust or not, the computed homography matrix is refined further (using
|
|
inliers only in case of a robust method) with the Levenberg-Marquardt method to reduce the
|
|
re-projection error even more.
|
|
|
|
The methods RANSAC and RHO can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers. Finally, if there are no outliers and the
|
|
noise is rather small, use the default method (method=0).
|
|
|
|
The function is used to find initial intrinsic and extrinsic matrices. Homography matrix is
|
|
determined up to a scale. Thus, it is normalized so that \(h_{33}=1\). Note that whenever an \(H\) matrix
|
|
cannot be estimated, an empty one will be returned.
|
|
|
|
SEE:
|
|
getAffineTransform, estimateAffine2D, estimateAffinePartial2D, getPerspectiveTransform, warpPerspective,
|
|
perspectiveTransform</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findHomography</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findHomography(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method,
|
|
double ransacReprojThreshold)</pre>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>srcPoints</code> - Coordinates of the points in the original plane, a matrix of the type CV_32FC2
|
|
or vector<Point2f> .</dd>
|
|
<dd><code>dstPoints</code> - Coordinates of the points in the target plane, a matrix of the type CV_32FC2 or
|
|
a vector<Point2f> .</dd>
|
|
<dd><code>method</code> - Method used to compute a homography matrix. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
<b>0</b> - a regular method using all the points, i.e., the least squares method
|
|
</li>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
</li>
|
|
<li>
|
|
REF: RHO - PROSAC-based robust method</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum allowed reprojection error to treat a point pair as an inlier
|
|
(used in the RANSAC and RHO methods only). That is, if
|
|
\(\| \texttt{dstPoints} _i - \texttt{convertPointsHomogeneous} ( \texttt{H} * \texttt{srcPoints} _i) \|_2 > \texttt{ransacReprojThreshold}\)
|
|
then the point \(i\) is considered as an outlier. If srcPoints and dstPoints are measured in pixels,
|
|
it usually makes sense to set this parameter somewhere in the range of 1 to 10.
|
|
mask values are ignored.
|
|
</li>
|
|
</ul>
|
|
|
|
The function finds and returns the perspective transformation \(H\) between the source and the
|
|
destination planes:
|
|
|
|
\(s_i \vecthree{x'_i}{y'_i}{1} \sim H \vecthree{x_i}{y_i}{1}\)
|
|
|
|
so that the back-projection error
|
|
|
|
\(\sum _i \left ( x'_i- \frac{h_{11} x_i + h_{12} y_i + h_{13}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2+ \left ( y'_i- \frac{h_{21} x_i + h_{22} y_i + h_{23}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2\)
|
|
|
|
is minimized. If the parameter method is set to the default value 0, the function uses all the point
|
|
pairs to compute an initial homography estimate with a simple least-squares scheme.
|
|
|
|
However, if not all of the point pairs ( \(srcPoints_i\), \(dstPoints_i\) ) fit the rigid perspective
|
|
transformation (that is, there are some outliers), this initial estimate will be poor. In this case,
|
|
you can use one of the three robust methods. The methods RANSAC, LMeDS and RHO try many different
|
|
random subsets of the corresponding point pairs (of four pairs each, collinear pairs are discarded), estimate the homography matrix
|
|
using this subset and a simple least-squares algorithm, and then compute the quality/goodness of the
|
|
computed homography (which is the number of inliers for RANSAC or the least median re-projection error for
|
|
LMeDS). The best subset is then used to produce the initial estimate of the homography matrix and
|
|
the mask of inliers/outliers.
|
|
|
|
Regardless of the method, robust or not, the computed homography matrix is refined further (using
|
|
inliers only in case of a robust method) with the Levenberg-Marquardt method to reduce the
|
|
re-projection error even more.
|
|
|
|
The methods RANSAC and RHO can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers. Finally, if there are no outliers and the
|
|
noise is rather small, use the default method (method=0).
|
|
|
|
The function is used to find initial intrinsic and extrinsic matrices. Homography matrix is
|
|
determined up to a scale. Thus, it is normalized so that \(h_{33}=1\). Note that whenever an \(H\) matrix
|
|
cannot be estimated, an empty one will be returned.
|
|
|
|
SEE:
|
|
getAffineTransform, estimateAffine2D, estimateAffinePartial2D, getPerspectiveTransform, warpPerspective,
|
|
perspectiveTransform</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findHomography</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findHomography(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>srcPoints</code> - Coordinates of the points in the original plane, a matrix of the type CV_32FC2
|
|
or vector<Point2f> .</dd>
|
|
<dd><code>dstPoints</code> - Coordinates of the points in the target plane, a matrix of the type CV_32FC2 or
|
|
a vector<Point2f> .</dd>
|
|
<dd><code>method</code> - Method used to compute a homography matrix. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
<b>0</b> - a regular method using all the points, i.e., the least squares method
|
|
</li>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
</li>
|
|
<li>
|
|
REF: RHO - PROSAC-based robust method</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum allowed reprojection error to treat a point pair as an inlier
|
|
(used in the RANSAC and RHO methods only). That is, if
|
|
\(\| \texttt{dstPoints} _i - \texttt{convertPointsHomogeneous} ( \texttt{H} * \texttt{srcPoints} _i) \|_2 > \texttt{ransacReprojThreshold}\)
|
|
then the point \(i\) is considered as an outlier. If srcPoints and dstPoints are measured in pixels,
|
|
it usually makes sense to set this parameter somewhere in the range of 1 to 10.</dd>
|
|
<dd><code>mask</code> - Optional output mask set by a robust method ( RANSAC or LMeDS ). Note that the input
|
|
mask values are ignored.
|
|
</li>
|
|
</ul>
|
|
|
|
The function finds and returns the perspective transformation \(H\) between the source and the
|
|
destination planes:
|
|
|
|
\(s_i \vecthree{x'_i}{y'_i}{1} \sim H \vecthree{x_i}{y_i}{1}\)
|
|
|
|
so that the back-projection error
|
|
|
|
\(\sum _i \left ( x'_i- \frac{h_{11} x_i + h_{12} y_i + h_{13}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2+ \left ( y'_i- \frac{h_{21} x_i + h_{22} y_i + h_{23}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2\)
|
|
|
|
is minimized. If the parameter method is set to the default value 0, the function uses all the point
|
|
pairs to compute an initial homography estimate with a simple least-squares scheme.
|
|
|
|
However, if not all of the point pairs ( \(srcPoints_i\), \(dstPoints_i\) ) fit the rigid perspective
|
|
transformation (that is, there are some outliers), this initial estimate will be poor. In this case,
|
|
you can use one of the three robust methods. The methods RANSAC, LMeDS and RHO try many different
|
|
random subsets of the corresponding point pairs (of four pairs each, collinear pairs are discarded), estimate the homography matrix
|
|
using this subset and a simple least-squares algorithm, and then compute the quality/goodness of the
|
|
computed homography (which is the number of inliers for RANSAC or the least median re-projection error for
|
|
LMeDS). The best subset is then used to produce the initial estimate of the homography matrix and
|
|
the mask of inliers/outliers.
|
|
|
|
Regardless of the method, robust or not, the computed homography matrix is refined further (using
|
|
inliers only in case of a robust method) with the Levenberg-Marquardt method to reduce the
|
|
re-projection error even more.
|
|
|
|
The methods RANSAC and RHO can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers. Finally, if there are no outliers and the
|
|
noise is rather small, use the default method (method=0).
|
|
|
|
The function is used to find initial intrinsic and extrinsic matrices. Homography matrix is
|
|
determined up to a scale. Thus, it is normalized so that \(h_{33}=1\). Note that whenever an \(H\) matrix
|
|
cannot be estimated, an empty one will be returned.
|
|
|
|
SEE:
|
|
getAffineTransform, estimateAffine2D, estimateAffinePartial2D, getPerspectiveTransform, warpPerspective,
|
|
perspectiveTransform</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findHomography</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findHomography(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
int maxIters)</pre>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>srcPoints</code> - Coordinates of the points in the original plane, a matrix of the type CV_32FC2
|
|
or vector<Point2f> .</dd>
|
|
<dd><code>dstPoints</code> - Coordinates of the points in the target plane, a matrix of the type CV_32FC2 or
|
|
a vector<Point2f> .</dd>
|
|
<dd><code>method</code> - Method used to compute a homography matrix. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
<b>0</b> - a regular method using all the points, i.e., the least squares method
|
|
</li>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
</li>
|
|
<li>
|
|
REF: RHO - PROSAC-based robust method</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum allowed reprojection error to treat a point pair as an inlier
|
|
(used in the RANSAC and RHO methods only). That is, if
|
|
\(\| \texttt{dstPoints} _i - \texttt{convertPointsHomogeneous} ( \texttt{H} * \texttt{srcPoints} _i) \|_2 > \texttt{ransacReprojThreshold}\)
|
|
then the point \(i\) is considered as an outlier. If srcPoints and dstPoints are measured in pixels,
|
|
it usually makes sense to set this parameter somewhere in the range of 1 to 10.</dd>
|
|
<dd><code>mask</code> - Optional output mask set by a robust method ( RANSAC or LMeDS ). Note that the input
|
|
mask values are ignored.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of RANSAC iterations.
|
|
</li>
|
|
</ul>
|
|
|
|
The function finds and returns the perspective transformation \(H\) between the source and the
|
|
destination planes:
|
|
|
|
\(s_i \vecthree{x'_i}{y'_i}{1} \sim H \vecthree{x_i}{y_i}{1}\)
|
|
|
|
so that the back-projection error
|
|
|
|
\(\sum _i \left ( x'_i- \frac{h_{11} x_i + h_{12} y_i + h_{13}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2+ \left ( y'_i- \frac{h_{21} x_i + h_{22} y_i + h_{23}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2\)
|
|
|
|
is minimized. If the parameter method is set to the default value 0, the function uses all the point
|
|
pairs to compute an initial homography estimate with a simple least-squares scheme.
|
|
|
|
However, if not all of the point pairs ( \(srcPoints_i\), \(dstPoints_i\) ) fit the rigid perspective
|
|
transformation (that is, there are some outliers), this initial estimate will be poor. In this case,
|
|
you can use one of the three robust methods. The methods RANSAC, LMeDS and RHO try many different
|
|
random subsets of the corresponding point pairs (of four pairs each, collinear pairs are discarded), estimate the homography matrix
|
|
using this subset and a simple least-squares algorithm, and then compute the quality/goodness of the
|
|
computed homography (which is the number of inliers for RANSAC or the least median re-projection error for
|
|
LMeDS). The best subset is then used to produce the initial estimate of the homography matrix and
|
|
the mask of inliers/outliers.
|
|
|
|
Regardless of the method, robust or not, the computed homography matrix is refined further (using
|
|
inliers only in case of a robust method) with the Levenberg-Marquardt method to reduce the
|
|
re-projection error even more.
|
|
|
|
The methods RANSAC and RHO can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers. Finally, if there are no outliers and the
|
|
noise is rather small, use the default method (method=0).
|
|
|
|
The function is used to find initial intrinsic and extrinsic matrices. Homography matrix is
|
|
determined up to a scale. Thus, it is normalized so that \(h_{33}=1\). Note that whenever an \(H\) matrix
|
|
cannot be estimated, an empty one will be returned.
|
|
|
|
SEE:
|
|
getAffineTransform, estimateAffine2D, estimateAffinePartial2D, getPerspectiveTransform, warpPerspective,
|
|
perspectiveTransform</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-int-double-org.opencv.core.Mat-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findHomography</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findHomography(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
int method,
|
|
double ransacReprojThreshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
int maxIters,
|
|
double confidence)</pre>
|
|
<div class="block">Finds a perspective transformation between two planes.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>srcPoints</code> - Coordinates of the points in the original plane, a matrix of the type CV_32FC2
|
|
or vector<Point2f> .</dd>
|
|
<dd><code>dstPoints</code> - Coordinates of the points in the target plane, a matrix of the type CV_32FC2 or
|
|
a vector<Point2f> .</dd>
|
|
<dd><code>method</code> - Method used to compute a homography matrix. The following methods are possible:
|
|
<ul>
|
|
<li>
|
|
<b>0</b> - a regular method using all the points, i.e., the least squares method
|
|
</li>
|
|
<li>
|
|
REF: RANSAC - RANSAC-based robust method
|
|
</li>
|
|
<li>
|
|
REF: LMEDS - Least-Median robust method
|
|
</li>
|
|
<li>
|
|
REF: RHO - PROSAC-based robust method</dd>
|
|
<dd><code>ransacReprojThreshold</code> - Maximum allowed reprojection error to treat a point pair as an inlier
|
|
(used in the RANSAC and RHO methods only). That is, if
|
|
\(\| \texttt{dstPoints} _i - \texttt{convertPointsHomogeneous} ( \texttt{H} * \texttt{srcPoints} _i) \|_2 > \texttt{ransacReprojThreshold}\)
|
|
then the point \(i\) is considered as an outlier. If srcPoints and dstPoints are measured in pixels,
|
|
it usually makes sense to set this parameter somewhere in the range of 1 to 10.</dd>
|
|
<dd><code>mask</code> - Optional output mask set by a robust method ( RANSAC or LMeDS ). Note that the input
|
|
mask values are ignored.</dd>
|
|
<dd><code>maxIters</code> - The maximum number of RANSAC iterations.</dd>
|
|
<dd><code>confidence</code> - Confidence level, between 0 and 1.
|
|
</li>
|
|
</ul>
|
|
|
|
The function finds and returns the perspective transformation \(H\) between the source and the
|
|
destination planes:
|
|
|
|
\(s_i \vecthree{x'_i}{y'_i}{1} \sim H \vecthree{x_i}{y_i}{1}\)
|
|
|
|
so that the back-projection error
|
|
|
|
\(\sum _i \left ( x'_i- \frac{h_{11} x_i + h_{12} y_i + h_{13}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2+ \left ( y'_i- \frac{h_{21} x_i + h_{22} y_i + h_{23}}{h_{31} x_i + h_{32} y_i + h_{33}} \right )^2\)
|
|
|
|
is minimized. If the parameter method is set to the default value 0, the function uses all the point
|
|
pairs to compute an initial homography estimate with a simple least-squares scheme.
|
|
|
|
However, if not all of the point pairs ( \(srcPoints_i\), \(dstPoints_i\) ) fit the rigid perspective
|
|
transformation (that is, there are some outliers), this initial estimate will be poor. In this case,
|
|
you can use one of the three robust methods. The methods RANSAC, LMeDS and RHO try many different
|
|
random subsets of the corresponding point pairs (of four pairs each, collinear pairs are discarded), estimate the homography matrix
|
|
using this subset and a simple least-squares algorithm, and then compute the quality/goodness of the
|
|
computed homography (which is the number of inliers for RANSAC or the least median re-projection error for
|
|
LMeDS). The best subset is then used to produce the initial estimate of the homography matrix and
|
|
the mask of inliers/outliers.
|
|
|
|
Regardless of the method, robust or not, the computed homography matrix is refined further (using
|
|
inliers only in case of a robust method) with the Levenberg-Marquardt method to reduce the
|
|
re-projection error even more.
|
|
|
|
The methods RANSAC and RHO can handle practically any ratio of outliers but need a threshold to
|
|
distinguish inliers from outliers. The method LMeDS does not need any threshold but it works
|
|
correctly only when there are more than 50% of inliers. Finally, if there are no outliers and the
|
|
noise is rather small, use the default method (method=0).
|
|
|
|
The function is used to find initial intrinsic and extrinsic matrices. Homography matrix is
|
|
determined up to a scale. Thus, it is normalized so that \(h_{33}=1\). Note that whenever an \(H\) matrix
|
|
cannot be estimated, an empty one will be returned.
|
|
|
|
SEE:
|
|
getAffineTransform, estimateAffine2D, estimateAffinePartial2D, getPerspectiveTransform, warpPerspective,
|
|
perspectiveTransform</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="findHomography-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>findHomography</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> findHomography(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> srcPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dstPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_calibrate-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_calibrate</h4>
|
|
<pre>public static double fisheye_calibrate(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs)</pre>
|
|
<div class="block">Performs camera calibaration</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - vector of vectors of calibration pattern points in the calibration pattern
|
|
coordinate space.</dd>
|
|
<dd><code>imagePoints</code> - vector of vectors of the projections of calibration pattern points.
|
|
imagePoints.size() and objectPoints.size() and imagePoints[i].size() must be equal to
|
|
objectPoints[i].size() for each i.</dd>
|
|
<dd><code>image_size</code> - Size of the image used only to initialize the camera intrinsic matrix.</dd>
|
|
<dd><code>K</code> - Output 3x3 floating-point camera intrinsic matrix
|
|
\(\cameramatrix{A}\) . If
|
|
REF: fisheye::CALIB_USE_INTRINSIC_GUESS is specified, some or all of fx, fy, cx, cy must be
|
|
initialized before calling the function.</dd>
|
|
<dd><code>D</code> - Output vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>rvecs</code> - Output vector of rotation vectors (see Rodrigues ) estimated for each pattern view.
|
|
That is, each k-th rotation vector together with the corresponding k-th translation vector (see
|
|
the next output parameter description) brings the calibration pattern from the model coordinate
|
|
space (in which object points are specified) to the world coordinate space, that is, a real
|
|
position of the calibration pattern in the k-th pattern view (k=0.. *M* -1).</dd>
|
|
<dd><code>tvecs</code> - Output vector of translation vectors estimated for each pattern view.
|
|
<ul>
|
|
<li>
|
|
REF: fisheye::CALIB_USE_INTRINSIC_GUESS cameraMatrix contains valid initial values of
|
|
fx, fy, cx, cy that are optimized further. Otherwise, (cx, cy) is initially set to the image
|
|
center ( imageSize is used), and focal distances are computed in a least-squares fashion.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_RECOMPUTE_EXTRINSIC Extrinsic will be recomputed after each iteration
|
|
of intrinsic optimization.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_CHECK_COND The functions will check validity of condition number.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_SKEW Skew coefficient (alpha) is set to zero and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_K1,..., REF: fisheye::CALIB_FIX_K4 Selected distortion coefficients
|
|
are set to zeros and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_PRINCIPAL_POINT The principal point is not changed during the global
|
|
optimization. It stays at the center or at a different location specified when REF: fisheye::CALIB_USE_INTRINSIC_GUESS is set too.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_FOCAL_LENGTH The focal length is not changed during the global
|
|
optimization. It is the \(max(width,height)/\pi\) or the provided \(f_x\), \(f_y\) when REF: fisheye::CALIB_USE_INTRINSIC_GUESS is set too.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_calibrate-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_calibrate</h4>
|
|
<pre>public static double fisheye_calibrate(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags)</pre>
|
|
<div class="block">Performs camera calibaration</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - vector of vectors of calibration pattern points in the calibration pattern
|
|
coordinate space.</dd>
|
|
<dd><code>imagePoints</code> - vector of vectors of the projections of calibration pattern points.
|
|
imagePoints.size() and objectPoints.size() and imagePoints[i].size() must be equal to
|
|
objectPoints[i].size() for each i.</dd>
|
|
<dd><code>image_size</code> - Size of the image used only to initialize the camera intrinsic matrix.</dd>
|
|
<dd><code>K</code> - Output 3x3 floating-point camera intrinsic matrix
|
|
\(\cameramatrix{A}\) . If
|
|
REF: fisheye::CALIB_USE_INTRINSIC_GUESS is specified, some or all of fx, fy, cx, cy must be
|
|
initialized before calling the function.</dd>
|
|
<dd><code>D</code> - Output vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>rvecs</code> - Output vector of rotation vectors (see Rodrigues ) estimated for each pattern view.
|
|
That is, each k-th rotation vector together with the corresponding k-th translation vector (see
|
|
the next output parameter description) brings the calibration pattern from the model coordinate
|
|
space (in which object points are specified) to the world coordinate space, that is, a real
|
|
position of the calibration pattern in the k-th pattern view (k=0.. *M* -1).</dd>
|
|
<dd><code>tvecs</code> - Output vector of translation vectors estimated for each pattern view.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: fisheye::CALIB_USE_INTRINSIC_GUESS cameraMatrix contains valid initial values of
|
|
fx, fy, cx, cy that are optimized further. Otherwise, (cx, cy) is initially set to the image
|
|
center ( imageSize is used), and focal distances are computed in a least-squares fashion.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_RECOMPUTE_EXTRINSIC Extrinsic will be recomputed after each iteration
|
|
of intrinsic optimization.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_CHECK_COND The functions will check validity of condition number.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_SKEW Skew coefficient (alpha) is set to zero and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_K1,..., REF: fisheye::CALIB_FIX_K4 Selected distortion coefficients
|
|
are set to zeros and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_PRINCIPAL_POINT The principal point is not changed during the global
|
|
optimization. It stays at the center or at a different location specified when REF: fisheye::CALIB_USE_INTRINSIC_GUESS is set too.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_FOCAL_LENGTH The focal length is not changed during the global
|
|
optimization. It is the \(max(width,height)/\pi\) or the provided \(f_x\), \(f_y\) when REF: fisheye::CALIB_USE_INTRINSIC_GUESS is set too.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_calibrate-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_calibrate</h4>
|
|
<pre>public static double fisheye_calibrate(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
<div class="block">Performs camera calibaration</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - vector of vectors of calibration pattern points in the calibration pattern
|
|
coordinate space.</dd>
|
|
<dd><code>imagePoints</code> - vector of vectors of the projections of calibration pattern points.
|
|
imagePoints.size() and objectPoints.size() and imagePoints[i].size() must be equal to
|
|
objectPoints[i].size() for each i.</dd>
|
|
<dd><code>image_size</code> - Size of the image used only to initialize the camera intrinsic matrix.</dd>
|
|
<dd><code>K</code> - Output 3x3 floating-point camera intrinsic matrix
|
|
\(\cameramatrix{A}\) . If
|
|
REF: fisheye::CALIB_USE_INTRINSIC_GUESS is specified, some or all of fx, fy, cx, cy must be
|
|
initialized before calling the function.</dd>
|
|
<dd><code>D</code> - Output vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>rvecs</code> - Output vector of rotation vectors (see Rodrigues ) estimated for each pattern view.
|
|
That is, each k-th rotation vector together with the corresponding k-th translation vector (see
|
|
the next output parameter description) brings the calibration pattern from the model coordinate
|
|
space (in which object points are specified) to the world coordinate space, that is, a real
|
|
position of the calibration pattern in the k-th pattern view (k=0.. *M* -1).</dd>
|
|
<dd><code>tvecs</code> - Output vector of translation vectors estimated for each pattern view.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: fisheye::CALIB_USE_INTRINSIC_GUESS cameraMatrix contains valid initial values of
|
|
fx, fy, cx, cy that are optimized further. Otherwise, (cx, cy) is initially set to the image
|
|
center ( imageSize is used), and focal distances are computed in a least-squares fashion.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_RECOMPUTE_EXTRINSIC Extrinsic will be recomputed after each iteration
|
|
of intrinsic optimization.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_CHECK_COND The functions will check validity of condition number.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_SKEW Skew coefficient (alpha) is set to zero and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_K1,..., REF: fisheye::CALIB_FIX_K4 Selected distortion coefficients
|
|
are set to zeros and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_PRINCIPAL_POINT The principal point is not changed during the global
|
|
optimization. It stays at the center or at a different location specified when REF: fisheye::CALIB_USE_INTRINSIC_GUESS is set too.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_FOCAL_LENGTH The focal length is not changed during the global
|
|
optimization. It is the \(max(width,height)/\pi\) or the provided \(f_x\), \(f_y\) when REF: fisheye::CALIB_USE_INTRINSIC_GUESS is set too.</dd>
|
|
<dd><code>criteria</code> - Termination criteria for the iterative optimization algorithm.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_distortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_distortPoints</h4>
|
|
<pre>public static void fisheye_distortPoints(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D)</pre>
|
|
<div class="block">Distorts 2D points using fisheye model.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>undistorted</code> - Array of object points, 1xN/Nx1 2-channel (or vector<Point2f> ), where N is
|
|
the number of points in the view.</dd>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>distorted</code> - Output array of image points, 1xN/Nx1 2-channel, or vector<Point2f> .
|
|
|
|
Note that the function assumes the camera intrinsic matrix of the undistorted points to be identity.
|
|
This means if you want to transform back points undistorted with #fisheye::undistortPoints you have to
|
|
multiply them with \(P^{-1}\).</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_distortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_distortPoints</h4>
|
|
<pre>public static void fisheye_distortPoints(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
double alpha)</pre>
|
|
<div class="block">Distorts 2D points using fisheye model.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>undistorted</code> - Array of object points, 1xN/Nx1 2-channel (or vector<Point2f> ), where N is
|
|
the number of points in the view.</dd>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>alpha</code> - The skew coefficient.</dd>
|
|
<dd><code>distorted</code> - Output array of image points, 1xN/Nx1 2-channel, or vector<Point2f> .
|
|
|
|
Note that the function assumes the camera intrinsic matrix of the undistorted points to be identity.
|
|
This means if you want to transform back points undistorted with #fisheye::undistortPoints you have to
|
|
multiply them with \(P^{-1}\).</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_estimateNewCameraMatrixForUndistortRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_estimateNewCameraMatrixForUndistortRectify</h4>
|
|
<pre>public static void fisheye_estimateNewCameraMatrixForUndistortRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P)</pre>
|
|
<div class="block">Estimates new camera intrinsic matrix for undistortion or rectification.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>image_size</code> - Size of the image</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>R</code> - Rectification transformation in the object space: 3x3 1-channel, or vector: 3x1/1x3
|
|
1-channel or 1x1 3-channel</dd>
|
|
<dd><code>P</code> - New camera intrinsic matrix (3x3) or new projection matrix (3x4)
|
|
length. Balance is in range of [0, 1].</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_estimateNewCameraMatrixForUndistortRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_estimateNewCameraMatrixForUndistortRectify</h4>
|
|
<pre>public static void fisheye_estimateNewCameraMatrixForUndistortRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
double balance)</pre>
|
|
<div class="block">Estimates new camera intrinsic matrix for undistortion or rectification.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>image_size</code> - Size of the image</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>R</code> - Rectification transformation in the object space: 3x3 1-channel, or vector: 3x1/1x3
|
|
1-channel or 1x1 3-channel</dd>
|
|
<dd><code>P</code> - New camera intrinsic matrix (3x3) or new projection matrix (3x4)</dd>
|
|
<dd><code>balance</code> - Sets the new focal length in range between the min focal length and the max focal
|
|
length. Balance is in range of [0, 1].</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_estimateNewCameraMatrixForUndistortRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Size-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_estimateNewCameraMatrixForUndistortRectify</h4>
|
|
<pre>public static void fisheye_estimateNewCameraMatrixForUndistortRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
double balance,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> new_size)</pre>
|
|
<div class="block">Estimates new camera intrinsic matrix for undistortion or rectification.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>image_size</code> - Size of the image</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>R</code> - Rectification transformation in the object space: 3x3 1-channel, or vector: 3x1/1x3
|
|
1-channel or 1x1 3-channel</dd>
|
|
<dd><code>P</code> - New camera intrinsic matrix (3x3) or new projection matrix (3x4)</dd>
|
|
<dd><code>balance</code> - Sets the new focal length in range between the min focal length and the max focal
|
|
length. Balance is in range of [0, 1].</dd>
|
|
<dd><code>new_size</code> - the new size</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_estimateNewCameraMatrixForUndistortRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Size-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_estimateNewCameraMatrixForUndistortRectify</h4>
|
|
<pre>public static void fisheye_estimateNewCameraMatrixForUndistortRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> image_size,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
double balance,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> new_size,
|
|
double fov_scale)</pre>
|
|
<div class="block">Estimates new camera intrinsic matrix for undistortion or rectification.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>image_size</code> - Size of the image</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>R</code> - Rectification transformation in the object space: 3x3 1-channel, or vector: 3x1/1x3
|
|
1-channel or 1x1 3-channel</dd>
|
|
<dd><code>P</code> - New camera intrinsic matrix (3x3) or new projection matrix (3x4)</dd>
|
|
<dd><code>balance</code> - Sets the new focal length in range between the min focal length and the max focal
|
|
length. Balance is in range of [0, 1].</dd>
|
|
<dd><code>new_size</code> - the new size</dd>
|
|
<dd><code>fov_scale</code> - Divisor for new focal length.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_initUndistortRectifyMap-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_initUndistortRectifyMap</h4>
|
|
<pre>public static void fisheye_initUndistortRectifyMap(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> size,
|
|
int m1type,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map2)</pre>
|
|
<div class="block">Computes undistortion and rectification maps for image transform by #remap. If D is empty zero
|
|
distortion is used, if R or P is empty identity matrixes are used.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>R</code> - Rectification transformation in the object space: 3x3 1-channel, or vector: 3x1/1x3
|
|
1-channel or 1x1 3-channel</dd>
|
|
<dd><code>P</code> - New camera intrinsic matrix (3x3) or new projection matrix (3x4)</dd>
|
|
<dd><code>size</code> - Undistorted image size.</dd>
|
|
<dd><code>m1type</code> - Type of the first output map that can be CV_32FC1 or CV_16SC2 . See #convertMaps
|
|
for details.</dd>
|
|
<dd><code>map1</code> - The first output map.</dd>
|
|
<dd><code>map2</code> - The second output map.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_projectPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_projectPoints</h4>
|
|
<pre>public static void fisheye_projectPoints(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_projectPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_projectPoints</h4>
|
|
<pre>public static void fisheye_projectPoints(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
double alpha)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_projectPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_projectPoints</h4>
|
|
<pre>public static void fisheye_projectPoints(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> jacobian)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_stereoCalibrate</h4>
|
|
<pre>public static double fisheye_stereoCalibrate(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T)</pre>
|
|
<div class="block">Performs stereo calibration</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of the calibration pattern points.</dd>
|
|
<dd><code>imagePoints1</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the first camera.</dd>
|
|
<dd><code>imagePoints2</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the second camera.</dd>
|
|
<dd><code>K1</code> - Input/output first camera intrinsic matrix:
|
|
\(\vecthreethree{f_x^{(j)}}{0}{c_x^{(j)}}{0}{f_y^{(j)}}{c_y^{(j)}}{0}{0}{1}\) , \(j = 0,\, 1\) . If
|
|
any of REF: fisheye::CALIB_USE_INTRINSIC_GUESS , REF: fisheye::CALIB_FIX_INTRINSIC are specified,
|
|
some or all of the matrix components must be initialized.</dd>
|
|
<dd><code>D1</code> - Input/output vector of distortion coefficients \(\distcoeffsfisheye\) of 4 elements.</dd>
|
|
<dd><code>K2</code> - Input/output second camera intrinsic matrix. The parameter is similar to K1 .</dd>
|
|
<dd><code>D2</code> - Input/output lens distortion coefficients for the second camera. The parameter is
|
|
similar to D1 .</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize camera intrinsic matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix between the 1st and the 2nd camera coordinate systems.</dd>
|
|
<dd><code>T</code> - Output translation vector between the coordinate systems of the cameras.
|
|
<ul>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_INTRINSIC Fix K1, K2? and D1, D2? so that only R, T matrices
|
|
are estimated.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_USE_INTRINSIC_GUESS K1, K2 contains valid initial values of
|
|
fx, fy, cx, cy that are optimized further. Otherwise, (cx, cy) is initially set to the image
|
|
center (imageSize is used), and focal distances are computed in a least-squares fashion.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_RECOMPUTE_EXTRINSIC Extrinsic will be recomputed after each iteration
|
|
of intrinsic optimization.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_CHECK_COND The functions will check validity of condition number.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_SKEW Skew coefficient (alpha) is set to zero and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_K1,..., REF: fisheye::CALIB_FIX_K4 Selected distortion coefficients are set to zeros and stay
|
|
zero.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_stereoCalibrate</h4>
|
|
<pre>public static double fisheye_stereoCalibrate(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
int flags)</pre>
|
|
<div class="block">Performs stereo calibration</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of the calibration pattern points.</dd>
|
|
<dd><code>imagePoints1</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the first camera.</dd>
|
|
<dd><code>imagePoints2</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the second camera.</dd>
|
|
<dd><code>K1</code> - Input/output first camera intrinsic matrix:
|
|
\(\vecthreethree{f_x^{(j)}}{0}{c_x^{(j)}}{0}{f_y^{(j)}}{c_y^{(j)}}{0}{0}{1}\) , \(j = 0,\, 1\) . If
|
|
any of REF: fisheye::CALIB_USE_INTRINSIC_GUESS , REF: fisheye::CALIB_FIX_INTRINSIC are specified,
|
|
some or all of the matrix components must be initialized.</dd>
|
|
<dd><code>D1</code> - Input/output vector of distortion coefficients \(\distcoeffsfisheye\) of 4 elements.</dd>
|
|
<dd><code>K2</code> - Input/output second camera intrinsic matrix. The parameter is similar to K1 .</dd>
|
|
<dd><code>D2</code> - Input/output lens distortion coefficients for the second camera. The parameter is
|
|
similar to D1 .</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize camera intrinsic matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix between the 1st and the 2nd camera coordinate systems.</dd>
|
|
<dd><code>T</code> - Output translation vector between the coordinate systems of the cameras.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_INTRINSIC Fix K1, K2? and D1, D2? so that only R, T matrices
|
|
are estimated.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_USE_INTRINSIC_GUESS K1, K2 contains valid initial values of
|
|
fx, fy, cx, cy that are optimized further. Otherwise, (cx, cy) is initially set to the image
|
|
center (imageSize is used), and focal distances are computed in a least-squares fashion.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_RECOMPUTE_EXTRINSIC Extrinsic will be recomputed after each iteration
|
|
of intrinsic optimization.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_CHECK_COND The functions will check validity of condition number.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_SKEW Skew coefficient (alpha) is set to zero and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_K1,..., REF: fisheye::CALIB_FIX_K4 Selected distortion coefficients are set to zeros and stay
|
|
zero.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_stereoCalibrate</h4>
|
|
<pre>public static double fisheye_stereoCalibrate(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
<div class="block">Performs stereo calibration</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of the calibration pattern points.</dd>
|
|
<dd><code>imagePoints1</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the first camera.</dd>
|
|
<dd><code>imagePoints2</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the second camera.</dd>
|
|
<dd><code>K1</code> - Input/output first camera intrinsic matrix:
|
|
\(\vecthreethree{f_x^{(j)}}{0}{c_x^{(j)}}{0}{f_y^{(j)}}{c_y^{(j)}}{0}{0}{1}\) , \(j = 0,\, 1\) . If
|
|
any of REF: fisheye::CALIB_USE_INTRINSIC_GUESS , REF: fisheye::CALIB_FIX_INTRINSIC are specified,
|
|
some or all of the matrix components must be initialized.</dd>
|
|
<dd><code>D1</code> - Input/output vector of distortion coefficients \(\distcoeffsfisheye\) of 4 elements.</dd>
|
|
<dd><code>K2</code> - Input/output second camera intrinsic matrix. The parameter is similar to K1 .</dd>
|
|
<dd><code>D2</code> - Input/output lens distortion coefficients for the second camera. The parameter is
|
|
similar to D1 .</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize camera intrinsic matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix between the 1st and the 2nd camera coordinate systems.</dd>
|
|
<dd><code>T</code> - Output translation vector between the coordinate systems of the cameras.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_INTRINSIC Fix K1, K2? and D1, D2? so that only R, T matrices
|
|
are estimated.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_USE_INTRINSIC_GUESS K1, K2 contains valid initial values of
|
|
fx, fy, cx, cy that are optimized further. Otherwise, (cx, cy) is initially set to the image
|
|
center (imageSize is used), and focal distances are computed in a least-squares fashion.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_RECOMPUTE_EXTRINSIC Extrinsic will be recomputed after each iteration
|
|
of intrinsic optimization.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_CHECK_COND The functions will check validity of condition number.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_SKEW Skew coefficient (alpha) is set to zero and stay zero.
|
|
</li>
|
|
<li>
|
|
REF: fisheye::CALIB_FIX_K1,..., REF: fisheye::CALIB_FIX_K4 Selected distortion coefficients are set to zeros and stay
|
|
zero.</dd>
|
|
<dd><code>criteria</code> - Termination criteria for the iterative optimization algorithm.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_stereoRectify</h4>
|
|
<pre>public static void fisheye_stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags)</pre>
|
|
<div class="block">Stereo rectification for fisheye camera model</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>K1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>D1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>K2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>D2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix between the coordinate systems of the first and the second
|
|
cameras.</dd>
|
|
<dd><code>tvec</code> - Translation vector between coordinate systems of the cameras.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see reprojectImageTo3D ).</dd>
|
|
<dd><code>flags</code> - Operation flags that may be zero or REF: fisheye::CALIB_ZERO_DISPARITY . If the flag is set,
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.
|
|
length. Balance is in range of [0, 1].</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.Size-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_stereoRectify</h4>
|
|
<pre>public static void fisheye_stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize)</pre>
|
|
<div class="block">Stereo rectification for fisheye camera model</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>K1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>D1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>K2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>D2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix between the coordinate systems of the first and the second
|
|
cameras.</dd>
|
|
<dd><code>tvec</code> - Translation vector between coordinate systems of the cameras.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see reprojectImageTo3D ).</dd>
|
|
<dd><code>flags</code> - Operation flags that may be zero or REF: fisheye::CALIB_ZERO_DISPARITY . If the flag is set,
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.</dd>
|
|
<dd><code>newImageSize</code> - New image resolution after rectification. The same size should be passed to
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.
|
|
length. Balance is in range of [0, 1].</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.Size-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_stereoRectify</h4>
|
|
<pre>public static void fisheye_stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize,
|
|
double balance)</pre>
|
|
<div class="block">Stereo rectification for fisheye camera model</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>K1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>D1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>K2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>D2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix between the coordinate systems of the first and the second
|
|
cameras.</dd>
|
|
<dd><code>tvec</code> - Translation vector between coordinate systems of the cameras.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see reprojectImageTo3D ).</dd>
|
|
<dd><code>flags</code> - Operation flags that may be zero or REF: fisheye::CALIB_ZERO_DISPARITY . If the flag is set,
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.</dd>
|
|
<dd><code>newImageSize</code> - New image resolution after rectification. The same size should be passed to
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.</dd>
|
|
<dd><code>balance</code> - Sets the new focal length in range between the min focal length and the max focal
|
|
length. Balance is in range of [0, 1].</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.Size-double-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_stereoRectify</h4>
|
|
<pre>public static void fisheye_stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize,
|
|
double balance,
|
|
double fov_scale)</pre>
|
|
<div class="block">Stereo rectification for fisheye camera model</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>K1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>D1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>K2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>D2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix between the coordinate systems of the first and the second
|
|
cameras.</dd>
|
|
<dd><code>tvec</code> - Translation vector between coordinate systems of the cameras.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see reprojectImageTo3D ).</dd>
|
|
<dd><code>flags</code> - Operation flags that may be zero or REF: fisheye::CALIB_ZERO_DISPARITY . If the flag is set,
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.</dd>
|
|
<dd><code>newImageSize</code> - New image resolution after rectification. The same size should be passed to
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.</dd>
|
|
<dd><code>balance</code> - Sets the new focal length in range between the min focal length and the max focal
|
|
length. Balance is in range of [0, 1].</dd>
|
|
<dd><code>fov_scale</code> - Divisor for new focal length.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_undistortImage-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_undistortImage</h4>
|
|
<pre>public static void fisheye_undistortImage(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D)</pre>
|
|
<div class="block">Transforms an image to compensate for fisheye lens distortion.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>distorted</code> - image with fisheye lens distortion.</dd>
|
|
<dd><code>undistorted</code> - Output image with compensated fisheye lens distortion.</dd>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).
|
|
may additionally scale and shift the result by using a different matrix.
|
|
|
|
The function transforms an image to compensate radial and tangential lens distortion.
|
|
|
|
The function is simply a combination of #fisheye::initUndistortRectifyMap (with unity R ) and #remap
|
|
(with bilinear interpolation). See the former function for details of the transformation being
|
|
performed.
|
|
|
|
See below the results of undistortImage.
|
|
<ul>
|
|
<li>
|
|
a\) result of undistort of perspective camera model (all possible coefficients (k_1, k_2, k_3,
|
|
k_4, k_5, k_6) of distortion were optimized under calibration)
|
|
<ul>
|
|
<li>
|
|
b\) result of #fisheye::undistortImage of fisheye camera model (all possible coefficients (k_1, k_2,
|
|
k_3, k_4) of fisheye distortion were optimized under calibration)
|
|
</li>
|
|
<li>
|
|
c\) original image was captured with fisheye lens
|
|
</li>
|
|
</ul>
|
|
|
|
Pictures a) and b) almost the same. But if we consider points of image located far from the center
|
|
of image, we can notice that on image a) these points are distorted.
|
|
</li>
|
|
</ul>
|
|
|
|
</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_undistortImage-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_undistortImage</h4>
|
|
<pre>public static void fisheye_undistortImage(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Knew)</pre>
|
|
<div class="block">Transforms an image to compensate for fisheye lens distortion.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>distorted</code> - image with fisheye lens distortion.</dd>
|
|
<dd><code>undistorted</code> - Output image with compensated fisheye lens distortion.</dd>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>Knew</code> - Camera intrinsic matrix of the distorted image. By default, it is the identity matrix but you
|
|
may additionally scale and shift the result by using a different matrix.
|
|
|
|
The function transforms an image to compensate radial and tangential lens distortion.
|
|
|
|
The function is simply a combination of #fisheye::initUndistortRectifyMap (with unity R ) and #remap
|
|
(with bilinear interpolation). See the former function for details of the transformation being
|
|
performed.
|
|
|
|
See below the results of undistortImage.
|
|
<ul>
|
|
<li>
|
|
a\) result of undistort of perspective camera model (all possible coefficients (k_1, k_2, k_3,
|
|
k_4, k_5, k_6) of distortion were optimized under calibration)
|
|
<ul>
|
|
<li>
|
|
b\) result of #fisheye::undistortImage of fisheye camera model (all possible coefficients (k_1, k_2,
|
|
k_3, k_4) of fisheye distortion were optimized under calibration)
|
|
</li>
|
|
<li>
|
|
c\) original image was captured with fisheye lens
|
|
</li>
|
|
</ul>
|
|
|
|
Pictures a) and b) almost the same. But if we consider points of image located far from the center
|
|
of image, we can notice that on image a) these points are distorted.
|
|
</li>
|
|
</ul>
|
|
|
|
</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_undistortImage-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_undistortImage</h4>
|
|
<pre>public static void fisheye_undistortImage(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Knew,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> new_size)</pre>
|
|
<div class="block">Transforms an image to compensate for fisheye lens distortion.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>distorted</code> - image with fisheye lens distortion.</dd>
|
|
<dd><code>undistorted</code> - Output image with compensated fisheye lens distortion.</dd>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>Knew</code> - Camera intrinsic matrix of the distorted image. By default, it is the identity matrix but you
|
|
may additionally scale and shift the result by using a different matrix.</dd>
|
|
<dd><code>new_size</code> - the new size
|
|
|
|
The function transforms an image to compensate radial and tangential lens distortion.
|
|
|
|
The function is simply a combination of #fisheye::initUndistortRectifyMap (with unity R ) and #remap
|
|
(with bilinear interpolation). See the former function for details of the transformation being
|
|
performed.
|
|
|
|
See below the results of undistortImage.
|
|
<ul>
|
|
<li>
|
|
a\) result of undistort of perspective camera model (all possible coefficients (k_1, k_2, k_3,
|
|
k_4, k_5, k_6) of distortion were optimized under calibration)
|
|
<ul>
|
|
<li>
|
|
b\) result of #fisheye::undistortImage of fisheye camera model (all possible coefficients (k_1, k_2,
|
|
k_3, k_4) of fisheye distortion were optimized under calibration)
|
|
</li>
|
|
<li>
|
|
c\) original image was captured with fisheye lens
|
|
</li>
|
|
</ul>
|
|
|
|
Pictures a) and b) almost the same. But if we consider points of image located far from the center
|
|
of image, we can notice that on image a) these points are distorted.
|
|
</li>
|
|
</ul>
|
|
|
|
</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_undistortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_undistortPoints</h4>
|
|
<pre>public static void fisheye_undistortPoints(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D)</pre>
|
|
<div class="block">Undistorts 2D points using fisheye model</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>distorted</code> - Array of object points, 1xN/Nx1 2-channel (or vector<Point2f> ), where N is the
|
|
number of points in the view.</dd>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).
|
|
1-channel or 1x1 3-channel</dd>
|
|
<dd><code>undistorted</code> - Output array of image points, 1xN/Nx1 2-channel, or vector<Point2f> .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_undistortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_undistortPoints</h4>
|
|
<pre>public static void fisheye_undistortPoints(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R)</pre>
|
|
<div class="block">Undistorts 2D points using fisheye model</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>distorted</code> - Array of object points, 1xN/Nx1 2-channel (or vector<Point2f> ), where N is the
|
|
number of points in the view.</dd>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>R</code> - Rectification transformation in the object space: 3x3 1-channel, or vector: 3x1/1x3
|
|
1-channel or 1x1 3-channel</dd>
|
|
<dd><code>undistorted</code> - Output array of image points, 1xN/Nx1 2-channel, or vector<Point2f> .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="fisheye_undistortPoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>fisheye_undistortPoints</h4>
|
|
<pre>public static void fisheye_undistortPoints(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> undistorted,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> K,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> D,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P)</pre>
|
|
<div class="block">Undistorts 2D points using fisheye model</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>distorted</code> - Array of object points, 1xN/Nx1 2-channel (or vector<Point2f> ), where N is the
|
|
number of points in the view.</dd>
|
|
<dd><code>K</code> - Camera intrinsic matrix \(cameramatrix{K}\).</dd>
|
|
<dd><code>D</code> - Input vector of distortion coefficients \(\distcoeffsfisheye\).</dd>
|
|
<dd><code>R</code> - Rectification transformation in the object space: 3x3 1-channel, or vector: 3x1/1x3
|
|
1-channel or 1x1 3-channel</dd>
|
|
<dd><code>P</code> - New camera intrinsic matrix (3x3) or new projection matrix (3x4)</dd>
|
|
<dd><code>undistorted</code> - Output array of image points, 1xN/Nx1 2-channel, or vector<Point2f> .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="getDefaultNewCameraMatrix-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>getDefaultNewCameraMatrix</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> getDefaultNewCameraMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix)</pre>
|
|
<div class="block">Returns the default new camera matrix.
|
|
|
|
The function returns the camera matrix that is either an exact copy of the input cameraMatrix (when
|
|
centerPrinicipalPoint=false ), or the modified one (when centerPrincipalPoint=true).
|
|
|
|
In the latter case, the new camera matrix will be:
|
|
|
|
\(\begin{bmatrix} f_x && 0 && ( \texttt{imgSize.width} -1)*0.5 \\ 0 && f_y && ( \texttt{imgSize.height} -1)*0.5 \\ 0 && 0 && 1 \end{bmatrix} ,\)
|
|
|
|
where \(f_x\) and \(f_y\) are \((0,0)\) and \((1,1)\) elements of cameraMatrix, respectively.
|
|
|
|
By default, the undistortion functions in OpenCV (see #initUndistortRectifyMap, #undistort) do not
|
|
move the principal point. However, when you work with stereo, it is important to move the principal
|
|
points in both views to the same y-coordinate (which is required by most of stereo correspondence
|
|
algorithms), and may be to the same x-coordinate too. So, you can form the new camera matrix for
|
|
each view where the principal points are located at the center.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera matrix.
|
|
parameter indicates whether this location should be at the image center or not.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="getDefaultNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Size-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>getDefaultNewCameraMatrix</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> getDefaultNewCameraMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imgsize)</pre>
|
|
<div class="block">Returns the default new camera matrix.
|
|
|
|
The function returns the camera matrix that is either an exact copy of the input cameraMatrix (when
|
|
centerPrinicipalPoint=false ), or the modified one (when centerPrincipalPoint=true).
|
|
|
|
In the latter case, the new camera matrix will be:
|
|
|
|
\(\begin{bmatrix} f_x && 0 && ( \texttt{imgSize.width} -1)*0.5 \\ 0 && f_y && ( \texttt{imgSize.height} -1)*0.5 \\ 0 && 0 && 1 \end{bmatrix} ,\)
|
|
|
|
where \(f_x\) and \(f_y\) are \((0,0)\) and \((1,1)\) elements of cameraMatrix, respectively.
|
|
|
|
By default, the undistortion functions in OpenCV (see #initUndistortRectifyMap, #undistort) do not
|
|
move the principal point. However, when you work with stereo, it is important to move the principal
|
|
points in both views to the same y-coordinate (which is required by most of stereo correspondence
|
|
algorithms), and may be to the same x-coordinate too. So, you can form the new camera matrix for
|
|
each view where the principal points are located at the center.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera matrix.</dd>
|
|
<dd><code>imgsize</code> - Camera view image size in pixels.
|
|
parameter indicates whether this location should be at the image center or not.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="getDefaultNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Size-boolean-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>getDefaultNewCameraMatrix</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> getDefaultNewCameraMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imgsize,
|
|
boolean centerPrincipalPoint)</pre>
|
|
<div class="block">Returns the default new camera matrix.
|
|
|
|
The function returns the camera matrix that is either an exact copy of the input cameraMatrix (when
|
|
centerPrinicipalPoint=false ), or the modified one (when centerPrincipalPoint=true).
|
|
|
|
In the latter case, the new camera matrix will be:
|
|
|
|
\(\begin{bmatrix} f_x && 0 && ( \texttt{imgSize.width} -1)*0.5 \\ 0 && f_y && ( \texttt{imgSize.height} -1)*0.5 \\ 0 && 0 && 1 \end{bmatrix} ,\)
|
|
|
|
where \(f_x\) and \(f_y\) are \((0,0)\) and \((1,1)\) elements of cameraMatrix, respectively.
|
|
|
|
By default, the undistortion functions in OpenCV (see #initUndistortRectifyMap, #undistort) do not
|
|
move the principal point. However, when you work with stereo, it is important to move the principal
|
|
points in both views to the same y-coordinate (which is required by most of stereo correspondence
|
|
algorithms), and may be to the same x-coordinate too. So, you can form the new camera matrix for
|
|
each view where the principal points are located at the center.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera matrix.</dd>
|
|
<dd><code>imgsize</code> - Camera view image size in pixels.</dd>
|
|
<dd><code>centerPrincipalPoint</code> - Location of the principal point in the new camera matrix. The
|
|
parameter indicates whether this location should be at the image center or not.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="getOptimalNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>getOptimalNewCameraMatrix</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> getOptimalNewCameraMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double alpha)</pre>
|
|
<div class="block">Returns the new camera intrinsic matrix based on the free scaling parameter.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>imageSize</code> - Original image size.</dd>
|
|
<dd><code>alpha</code> - Free scaling parameter between 0 (when all the pixels in the undistorted image are
|
|
valid) and 1 (when all the source image pixels are retained in the undistorted image). See
|
|
#stereoRectify for details.
|
|
undistorted image. See roi1, roi2 description in #stereoRectify .
|
|
principal point should be at the image center or not. By default, the principal point is chosen to
|
|
best fit a subset of the source image (determined by alpha) to the corrected image.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>new_camera_matrix Output new camera intrinsic matrix.
|
|
|
|
The function computes and returns the optimal new camera intrinsic matrix based on the free scaling parameter.
|
|
By varying this parameter, you may retrieve only sensible pixels alpha=0 , keep all the original
|
|
image pixels if there is valuable information in the corners alpha=1 , or get something in between.
|
|
When alpha>0 , the undistorted result is likely to have some black pixels corresponding to
|
|
"virtual" pixels outside of the captured distorted image. The original camera intrinsic matrix, distortion
|
|
coefficients, the computed new camera intrinsic matrix, and newImageSize should be passed to
|
|
#initUndistortRectifyMap to produce the maps for #remap .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="getOptimalNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-double-org.opencv.core.Size-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>getOptimalNewCameraMatrix</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> getOptimalNewCameraMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImgSize)</pre>
|
|
<div class="block">Returns the new camera intrinsic matrix based on the free scaling parameter.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>imageSize</code> - Original image size.</dd>
|
|
<dd><code>alpha</code> - Free scaling parameter between 0 (when all the pixels in the undistorted image are
|
|
valid) and 1 (when all the source image pixels are retained in the undistorted image). See
|
|
#stereoRectify for details.</dd>
|
|
<dd><code>newImgSize</code> - Image size after rectification. By default, it is set to imageSize .
|
|
undistorted image. See roi1, roi2 description in #stereoRectify .
|
|
principal point should be at the image center or not. By default, the principal point is chosen to
|
|
best fit a subset of the source image (determined by alpha) to the corrected image.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>new_camera_matrix Output new camera intrinsic matrix.
|
|
|
|
The function computes and returns the optimal new camera intrinsic matrix based on the free scaling parameter.
|
|
By varying this parameter, you may retrieve only sensible pixels alpha=0 , keep all the original
|
|
image pixels if there is valuable information in the corners alpha=1 , or get something in between.
|
|
When alpha>0 , the undistorted result is likely to have some black pixels corresponding to
|
|
"virtual" pixels outside of the captured distorted image. The original camera intrinsic matrix, distortion
|
|
coefficients, the computed new camera intrinsic matrix, and newImageSize should be passed to
|
|
#initUndistortRectifyMap to produce the maps for #remap .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="getOptimalNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-double-org.opencv.core.Size-org.opencv.core.Rect-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>getOptimalNewCameraMatrix</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> getOptimalNewCameraMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImgSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI)</pre>
|
|
<div class="block">Returns the new camera intrinsic matrix based on the free scaling parameter.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>imageSize</code> - Original image size.</dd>
|
|
<dd><code>alpha</code> - Free scaling parameter between 0 (when all the pixels in the undistorted image are
|
|
valid) and 1 (when all the source image pixels are retained in the undistorted image). See
|
|
#stereoRectify for details.</dd>
|
|
<dd><code>newImgSize</code> - Image size after rectification. By default, it is set to imageSize .</dd>
|
|
<dd><code>validPixROI</code> - Optional output rectangle that outlines all-good-pixels region in the
|
|
undistorted image. See roi1, roi2 description in #stereoRectify .
|
|
principal point should be at the image center or not. By default, the principal point is chosen to
|
|
best fit a subset of the source image (determined by alpha) to the corrected image.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>new_camera_matrix Output new camera intrinsic matrix.
|
|
|
|
The function computes and returns the optimal new camera intrinsic matrix based on the free scaling parameter.
|
|
By varying this parameter, you may retrieve only sensible pixels alpha=0 , keep all the original
|
|
image pixels if there is valuable information in the corners alpha=1 , or get something in between.
|
|
When alpha>0 , the undistorted result is likely to have some black pixels corresponding to
|
|
"virtual" pixels outside of the captured distorted image. The original camera intrinsic matrix, distortion
|
|
coefficients, the computed new camera intrinsic matrix, and newImageSize should be passed to
|
|
#initUndistortRectifyMap to produce the maps for #remap .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="getOptimalNewCameraMatrix-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-double-org.opencv.core.Size-org.opencv.core.Rect-boolean-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>getOptimalNewCameraMatrix</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> getOptimalNewCameraMatrix(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImgSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI,
|
|
boolean centerPrincipalPoint)</pre>
|
|
<div class="block">Returns the new camera intrinsic matrix based on the free scaling parameter.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>imageSize</code> - Original image size.</dd>
|
|
<dd><code>alpha</code> - Free scaling parameter between 0 (when all the pixels in the undistorted image are
|
|
valid) and 1 (when all the source image pixels are retained in the undistorted image). See
|
|
#stereoRectify for details.</dd>
|
|
<dd><code>newImgSize</code> - Image size after rectification. By default, it is set to imageSize .</dd>
|
|
<dd><code>validPixROI</code> - Optional output rectangle that outlines all-good-pixels region in the
|
|
undistorted image. See roi1, roi2 description in #stereoRectify .</dd>
|
|
<dd><code>centerPrincipalPoint</code> - Optional flag that indicates whether in the new camera intrinsic matrix the
|
|
principal point should be at the image center or not. By default, the principal point is chosen to
|
|
best fit a subset of the source image (determined by alpha) to the corrected image.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>new_camera_matrix Output new camera intrinsic matrix.
|
|
|
|
The function computes and returns the optimal new camera intrinsic matrix based on the free scaling parameter.
|
|
By varying this parameter, you may retrieve only sensible pixels alpha=0 , keep all the original
|
|
image pixels if there is valuable information in the corners alpha=1 , or get something in between.
|
|
When alpha>0 , the undistorted result is likely to have some black pixels corresponding to
|
|
"virtual" pixels outside of the captured distorted image. The original camera intrinsic matrix, distortion
|
|
coefficients, the computed new camera intrinsic matrix, and newImageSize should be passed to
|
|
#initUndistortRectifyMap to produce the maps for #remap .</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="getValidDisparityROI-org.opencv.core.Rect-org.opencv.core.Rect-int-int-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>getValidDisparityROI</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> getValidDisparityROI(<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> roi1,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> roi2,
|
|
int minDisparity,
|
|
int numberOfDisparities,
|
|
int blockSize)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="initCameraMatrix2D-java.util.List-java.util.List-org.opencv.core.Size-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>initCameraMatrix2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> initCameraMatrix2D(java.util.List<<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize)</pre>
|
|
<div class="block">Finds an initial camera intrinsic matrix from 3D-2D point correspondences.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of the calibration pattern points in the calibration pattern
|
|
coordinate space. In the old interface all the per-view vectors are concatenated. See
|
|
#calibrateCamera for details.</dd>
|
|
<dd><code>imagePoints</code> - Vector of vectors of the projections of the calibration pattern points. In the
|
|
old interface all the per-view vectors are concatenated.</dd>
|
|
<dd><code>imageSize</code> - Image size in pixels used to initialize the principal point.
|
|
Otherwise, \(f_x = f_y * \texttt{aspectRatio}\) .
|
|
|
|
The function estimates and returns an initial camera intrinsic matrix for the camera calibration process.
|
|
Currently, the function only supports planar calibration patterns, which are patterns where each
|
|
object point has z-coordinate =0.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="initCameraMatrix2D-java.util.List-java.util.List-org.opencv.core.Size-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>initCameraMatrix2D</h4>
|
|
<pre>public static <a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> initCameraMatrix2D(java.util.List<<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a>> imagePoints,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
double aspectRatio)</pre>
|
|
<div class="block">Finds an initial camera intrinsic matrix from 3D-2D point correspondences.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of the calibration pattern points in the calibration pattern
|
|
coordinate space. In the old interface all the per-view vectors are concatenated. See
|
|
#calibrateCamera for details.</dd>
|
|
<dd><code>imagePoints</code> - Vector of vectors of the projections of the calibration pattern points. In the
|
|
old interface all the per-view vectors are concatenated.</dd>
|
|
<dd><code>imageSize</code> - Image size in pixels used to initialize the principal point.</dd>
|
|
<dd><code>aspectRatio</code> - If it is zero or negative, both \(f_x\) and \(f_y\) are estimated independently.
|
|
Otherwise, \(f_x = f_y * \texttt{aspectRatio}\) .
|
|
|
|
The function estimates and returns an initial camera intrinsic matrix for the camera calibration process.
|
|
Currently, the function only supports planar calibration patterns, which are patterns where each
|
|
object point has z-coordinate =0.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="initInverseRectificationMap-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>initInverseRectificationMap</h4>
|
|
<pre>public static void initInverseRectificationMap(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newCameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> size,
|
|
int m1type,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map2)</pre>
|
|
<div class="block">Computes the projection and inverse-rectification transformation map. In essense, this is the inverse of
|
|
#initUndistortRectifyMap to accomodate stereo-rectification of projectors ('inverse-cameras') in projector-camera pairs.
|
|
|
|
The function computes the joint projection and inverse rectification transformation and represents the
|
|
result in the form of maps for #remap. The projected image looks like a distorted version of the original which,
|
|
once projected by a projector, should visually match the original. In case of a monocular camera, newCameraMatrix
|
|
is usually equal to cameraMatrix, or it can be computed by
|
|
#getOptimalNewCameraMatrix for a better control over scaling. In case of a projector-camera pair,
|
|
newCameraMatrix is normally set to P1 or P2 computed by #stereoRectify .
|
|
|
|
The projector is oriented differently in the coordinate space, according to R. In case of projector-camera pairs,
|
|
this helps align the projector (in the same manner as #initUndistortRectifyMap for the camera) to create a stereo-rectified pair. This
|
|
allows epipolar lines on both images to become horizontal and have the same y-coordinate (in case of a horizontally aligned projector-camera pair).
|
|
|
|
The function builds the maps for the inverse mapping algorithm that is used by #remap. That
|
|
is, for each pixel \((u, v)\) in the destination (projected and inverse-rectified) image, the function
|
|
computes the corresponding coordinates in the source image (that is, in the original digital image). The following process is applied:
|
|
|
|
\(
|
|
\begin{array}{l}
|
|
\text{newCameraMatrix}\\
|
|
x \leftarrow (u - {c'}_x)/{f'}_x \\
|
|
y \leftarrow (v - {c'}_y)/{f'}_y \\
|
|
|
|
\\\text{Undistortion}
|
|
\\\scriptsize{\textit{though equation shown is for radial undistortion, function implements cv::undistortPoints()}}\\
|
|
r^2 \leftarrow x^2 + y^2 \\
|
|
\theta \leftarrow \frac{1 + k_1 r^2 + k_2 r^4 + k_3 r^6}{1 + k_4 r^2 + k_5 r^4 + k_6 r^6}\\
|
|
x' \leftarrow \frac{x}{\theta} \\
|
|
y' \leftarrow \frac{y}{\theta} \\
|
|
|
|
\\\text{Rectification}\\
|
|
{[X\,Y\,W]} ^T \leftarrow R*[x' \, y' \, 1]^T \\
|
|
x'' \leftarrow X/W \\
|
|
y'' \leftarrow Y/W \\
|
|
|
|
\\\text{cameraMatrix}\\
|
|
map_x(u,v) \leftarrow x'' f_x + c_x \\
|
|
map_y(u,v) \leftarrow y'' f_y + c_y
|
|
\end{array}
|
|
\)
|
|
where \((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
are the distortion coefficients vector distCoeffs.
|
|
|
|
In case of a stereo-rectified projector-camera pair, this function is called for the projector while #initUndistortRectifyMap is called for the camera head.
|
|
This is done after #stereoRectify, which in turn is called after #stereoCalibrate. If the projector-camera pair
|
|
is not calibrated, it is still possible to compute the rectification transformations directly from
|
|
the fundamental matrix using #stereoRectifyUncalibrated. For the projector and camera, the function computes
|
|
homography H as the rectification transformation in a pixel domain, not a rotation matrix R in 3D
|
|
space. R can be computed from H as
|
|
\(\texttt{R} = \texttt{cameraMatrix} ^{-1} \cdot \texttt{H} \cdot \texttt{cameraMatrix}\)
|
|
where cameraMatrix can be chosen arbitrarily.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera matrix \(A=\vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>R</code> - Optional rectification transformation in the object space (3x3 matrix). R1 or R2,
|
|
computed by #stereoRectify can be passed here. If the matrix is empty, the identity transformation
|
|
is assumed.</dd>
|
|
<dd><code>newCameraMatrix</code> - New camera matrix \(A'=\vecthreethree{f_x'}{0}{c_x'}{0}{f_y'}{c_y'}{0}{0}{1}\).</dd>
|
|
<dd><code>size</code> - Distorted image size.</dd>
|
|
<dd><code>m1type</code> - Type of the first output map. Can be CV_32FC1, CV_32FC2 or CV_16SC2, see #convertMaps</dd>
|
|
<dd><code>map1</code> - The first output map for #remap.</dd>
|
|
<dd><code>map2</code> - The second output map for #remap.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="initUndistortRectifyMap-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-int-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>initUndistortRectifyMap</h4>
|
|
<pre>public static void initUndistortRectifyMap(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newCameraMatrix,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> size,
|
|
int m1type,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> map2)</pre>
|
|
<div class="block">Computes the undistortion and rectification transformation map.
|
|
|
|
The function computes the joint undistortion and rectification transformation and represents the
|
|
result in the form of maps for #remap. The undistorted image looks like original, as if it is
|
|
captured with a camera using the camera matrix =newCameraMatrix and zero distortion. In case of a
|
|
monocular camera, newCameraMatrix is usually equal to cameraMatrix, or it can be computed by
|
|
#getOptimalNewCameraMatrix for a better control over scaling. In case of a stereo camera,
|
|
newCameraMatrix is normally set to P1 or P2 computed by #stereoRectify .
|
|
|
|
Also, this new camera is oriented differently in the coordinate space, according to R. That, for
|
|
example, helps to align two heads of a stereo camera so that the epipolar lines on both images
|
|
become horizontal and have the same y- coordinate (in case of a horizontally aligned stereo camera).
|
|
|
|
The function actually builds the maps for the inverse mapping algorithm that is used by #remap. That
|
|
is, for each pixel \((u, v)\) in the destination (corrected and rectified) image, the function
|
|
computes the corresponding coordinates in the source image (that is, in the original image from
|
|
camera). The following process is applied:
|
|
\(
|
|
\begin{array}{l}
|
|
x \leftarrow (u - {c'}_x)/{f'}_x \\
|
|
y \leftarrow (v - {c'}_y)/{f'}_y \\
|
|
{[X\,Y\,W]} ^T \leftarrow R^{-1}*[x \, y \, 1]^T \\
|
|
x' \leftarrow X/W \\
|
|
y' \leftarrow Y/W \\
|
|
r^2 \leftarrow x'^2 + y'^2 \\
|
|
x'' \leftarrow x' \frac{1 + k_1 r^2 + k_2 r^4 + k_3 r^6}{1 + k_4 r^2 + k_5 r^4 + k_6 r^6}
|
|
+ 2p_1 x' y' + p_2(r^2 + 2 x'^2) + s_1 r^2 + s_2 r^4\\
|
|
y'' \leftarrow y' \frac{1 + k_1 r^2 + k_2 r^4 + k_3 r^6}{1 + k_4 r^2 + k_5 r^4 + k_6 r^6}
|
|
+ p_1 (r^2 + 2 y'^2) + 2 p_2 x' y' + s_3 r^2 + s_4 r^4 \\
|
|
s\vecthree{x'''}{y'''}{1} =
|
|
\vecthreethree{R_{33}(\tau_x, \tau_y)}{0}{-R_{13}((\tau_x, \tau_y)}
|
|
{0}{R_{33}(\tau_x, \tau_y)}{-R_{23}(\tau_x, \tau_y)}
|
|
{0}{0}{1} R(\tau_x, \tau_y) \vecthree{x''}{y''}{1}\\
|
|
map_x(u,v) \leftarrow x''' f_x + c_x \\
|
|
map_y(u,v) \leftarrow y''' f_y + c_y
|
|
\end{array}
|
|
\)
|
|
where \((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
are the distortion coefficients.
|
|
|
|
In case of a stereo camera, this function is called twice: once for each camera head, after
|
|
#stereoRectify, which in its turn is called after #stereoCalibrate. But if the stereo camera
|
|
was not calibrated, it is still possible to compute the rectification transformations directly from
|
|
the fundamental matrix using #stereoRectifyUncalibrated. For each camera, the function computes
|
|
homography H as the rectification transformation in a pixel domain, not a rotation matrix R in 3D
|
|
space. R can be computed from H as
|
|
\(\texttt{R} = \texttt{cameraMatrix} ^{-1} \cdot \texttt{H} \cdot \texttt{cameraMatrix}\)
|
|
where cameraMatrix can be chosen arbitrarily.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix</code> - Input camera matrix \(A=\vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>R</code> - Optional rectification transformation in the object space (3x3 matrix). R1 or R2 ,
|
|
computed by #stereoRectify can be passed here. If the matrix is empty, the identity transformation
|
|
is assumed. In cvInitUndistortMap R assumed to be an identity matrix.</dd>
|
|
<dd><code>newCameraMatrix</code> - New camera matrix \(A'=\vecthreethree{f_x'}{0}{c_x'}{0}{f_y'}{c_y'}{0}{0}{1}\).</dd>
|
|
<dd><code>size</code> - Undistorted image size.</dd>
|
|
<dd><code>m1type</code> - Type of the first output map that can be CV_32FC1, CV_32FC2 or CV_16SC2, see #convertMaps</dd>
|
|
<dd><code>map1</code> - The first output map.</dd>
|
|
<dd><code>map2</code> - The second output map.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="matMulDeriv-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>matMulDeriv</h4>
|
|
<pre>public static void matMulDeriv(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> A,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> B,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dABdA,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dABdB)</pre>
|
|
<div class="block">Computes partial derivatives of the matrix product for each multiplied matrix.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>A</code> - First multiplied matrix.</dd>
|
|
<dd><code>B</code> - Second multiplied matrix.</dd>
|
|
<dd><code>dABdA</code> - First output derivative matrix d(A\*B)/dA of size
|
|
\(\texttt{A.rows*B.cols} \times {A.rows*A.cols}\) .</dd>
|
|
<dd><code>dABdB</code> - Second output derivative matrix d(A\*B)/dB of size
|
|
\(\texttt{A.rows*B.cols} \times {B.rows*B.cols}\) .
|
|
|
|
The function computes partial derivatives of the elements of the matrix product \(A*B\) with regard to
|
|
the elements of each of the two input matrices. The function is used to compute the Jacobian
|
|
matrices in #stereoCalibrate but can also be used in any other similar optimization function.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="projectPoints-org.opencv.core.MatOfPoint3f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.MatOfPoint2f-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>projectPoints</h4>
|
|
<pre>public static void projectPoints(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints)</pre>
|
|
<div class="block">Projects 3D points to an image plane.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points expressed wrt. the world coordinate frame. A 3xN/Nx3
|
|
1-channel or 1xN/Nx1 3-channel (or vector<Point3f> ), where N is the number of points in the view.</dd>
|
|
<dd><code>rvec</code> - The rotation vector (REF: Rodrigues) that, together with tvec, performs a change of
|
|
basis from world to camera coordinate system, see REF: calibrateCamera for details.</dd>
|
|
<dd><code>tvec</code> - The translation vector, see parameter description above.</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\) . If the vector is empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>imagePoints</code> - Output array of image points, 1xN/Nx1 2-channel, or
|
|
vector<Point2f> .
|
|
points with respect to components of the rotation vector, translation vector, focal lengths,
|
|
coordinates of the principal point and the distortion coefficients. In the old interface different
|
|
components of the jacobian are returned via different output parameters.
|
|
function assumes that the aspect ratio (\(f_x / f_y\)) is fixed and correspondingly adjusts the
|
|
jacobian matrix.
|
|
|
|
The function computes the 2D projections of 3D points to the image plane, given intrinsic and
|
|
extrinsic camera parameters. Optionally, the function computes Jacobians -matrices of partial
|
|
derivatives of image points coordinates (as functions of all the input parameters) with respect to
|
|
the particular parameters, intrinsic and/or extrinsic. The Jacobians are used during the global
|
|
optimization in REF: calibrateCamera, REF: solvePnP, and REF: stereoCalibrate. The function itself
|
|
can also be used to compute a re-projection error, given the current intrinsic and extrinsic
|
|
parameters.
|
|
|
|
<b>Note:</b> By setting rvec = tvec = \([0, 0, 0]\), or by setting cameraMatrix to a 3x3 identity matrix,
|
|
or by passing zero distortion coefficients, one can get various useful partial cases of the
|
|
function. This means, one can compute the distorted coordinates for a sparse set of points or apply
|
|
a perspective transformation (and also compute the derivatives) in the ideal zero-distortion setup.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="projectPoints-org.opencv.core.MatOfPoint3f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>projectPoints</h4>
|
|
<pre>public static void projectPoints(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> jacobian)</pre>
|
|
<div class="block">Projects 3D points to an image plane.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points expressed wrt. the world coordinate frame. A 3xN/Nx3
|
|
1-channel or 1xN/Nx1 3-channel (or vector<Point3f> ), where N is the number of points in the view.</dd>
|
|
<dd><code>rvec</code> - The rotation vector (REF: Rodrigues) that, together with tvec, performs a change of
|
|
basis from world to camera coordinate system, see REF: calibrateCamera for details.</dd>
|
|
<dd><code>tvec</code> - The translation vector, see parameter description above.</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\) . If the vector is empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>imagePoints</code> - Output array of image points, 1xN/Nx1 2-channel, or
|
|
vector<Point2f> .</dd>
|
|
<dd><code>jacobian</code> - Optional output 2Nx(10+<numDistCoeffs>) jacobian matrix of derivatives of image
|
|
points with respect to components of the rotation vector, translation vector, focal lengths,
|
|
coordinates of the principal point and the distortion coefficients. In the old interface different
|
|
components of the jacobian are returned via different output parameters.
|
|
function assumes that the aspect ratio (\(f_x / f_y\)) is fixed and correspondingly adjusts the
|
|
jacobian matrix.
|
|
|
|
The function computes the 2D projections of 3D points to the image plane, given intrinsic and
|
|
extrinsic camera parameters. Optionally, the function computes Jacobians -matrices of partial
|
|
derivatives of image points coordinates (as functions of all the input parameters) with respect to
|
|
the particular parameters, intrinsic and/or extrinsic. The Jacobians are used during the global
|
|
optimization in REF: calibrateCamera, REF: solvePnP, and REF: stereoCalibrate. The function itself
|
|
can also be used to compute a re-projection error, given the current intrinsic and extrinsic
|
|
parameters.
|
|
|
|
<b>Note:</b> By setting rvec = tvec = \([0, 0, 0]\), or by setting cameraMatrix to a 3x3 identity matrix,
|
|
or by passing zero distortion coefficients, one can get various useful partial cases of the
|
|
function. This means, one can compute the distorted coordinates for a sparse set of points or apply
|
|
a perspective transformation (and also compute the derivatives) in the ideal zero-distortion setup.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="projectPoints-org.opencv.core.MatOfPoint3f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>projectPoints</h4>
|
|
<pre>public static void projectPoints(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> jacobian,
|
|
double aspectRatio)</pre>
|
|
<div class="block">Projects 3D points to an image plane.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points expressed wrt. the world coordinate frame. A 3xN/Nx3
|
|
1-channel or 1xN/Nx1 3-channel (or vector<Point3f> ), where N is the number of points in the view.</dd>
|
|
<dd><code>rvec</code> - The rotation vector (REF: Rodrigues) that, together with tvec, performs a change of
|
|
basis from world to camera coordinate system, see REF: calibrateCamera for details.</dd>
|
|
<dd><code>tvec</code> - The translation vector, see parameter description above.</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\) . If the vector is empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>imagePoints</code> - Output array of image points, 1xN/Nx1 2-channel, or
|
|
vector<Point2f> .</dd>
|
|
<dd><code>jacobian</code> - Optional output 2Nx(10+<numDistCoeffs>) jacobian matrix of derivatives of image
|
|
points with respect to components of the rotation vector, translation vector, focal lengths,
|
|
coordinates of the principal point and the distortion coefficients. In the old interface different
|
|
components of the jacobian are returned via different output parameters.</dd>
|
|
<dd><code>aspectRatio</code> - Optional "fixed aspect ratio" parameter. If the parameter is not 0, the
|
|
function assumes that the aspect ratio (\(f_x / f_y\)) is fixed and correspondingly adjusts the
|
|
jacobian matrix.
|
|
|
|
The function computes the 2D projections of 3D points to the image plane, given intrinsic and
|
|
extrinsic camera parameters. Optionally, the function computes Jacobians -matrices of partial
|
|
derivatives of image points coordinates (as functions of all the input parameters) with respect to
|
|
the particular parameters, intrinsic and/or extrinsic. The Jacobians are used during the global
|
|
optimization in REF: calibrateCamera, REF: solvePnP, and REF: stereoCalibrate. The function itself
|
|
can also be used to compute a re-projection error, given the current intrinsic and extrinsic
|
|
parameters.
|
|
|
|
<b>Note:</b> By setting rvec = tvec = \([0, 0, 0]\), or by setting cameraMatrix to a 3x3 identity matrix,
|
|
or by passing zero distortion coefficients, one can get various useful partial cases of the
|
|
function. This means, one can compute the distorted coordinates for a sparse set of points or apply
|
|
a perspective transformation (and also compute the derivatives) in the ideal zero-distortion setup.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
description below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.
|
|
are feature points from cameras with same focal length and principal point.
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double focal)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
description below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>focal</code> - Focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
description below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>focal</code> - Focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.</dd>
|
|
<dd><code>pp</code> - principal point of the camera.
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Point-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double focal,
|
|
<a href="../../../org/opencv/core/Point.html" title="class in org.opencv.core">Point</a> pp,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
description below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>focal</code> - Focal length of the camera. Note that this function assumes that points1 and points2
|
|
are feature points from cameras with same focal length and principal point.</dd>
|
|
<dd><code>pp</code> - principal point of the camera.</dd>
|
|
<dd><code>mask</code> - Input/output mask for inliers in points1 and points2. If it is not empty, then it marks
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
|
|
This function differs from the one above that it computes camera intrinsic matrix from focal length and
|
|
principal point:
|
|
|
|
\(A =
|
|
\begin{bmatrix}
|
|
f & 0 & x_{pp} \\
|
|
0 & f & y_{pp} \\
|
|
0 & 0 & 1
|
|
\end{bmatrix}\)</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t)</pre>
|
|
<div class="block">Recovers the relative camera rotation and the translation from an estimated essential
|
|
matrix and the corresponding points in two images, using cheirality check. Returns the number of
|
|
inliers that pass the check.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
described below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
|
|
This function decomposes an essential matrix using REF: decomposeEssentialMat and then verifies
|
|
possible pose hypotheses by doing cheirality check. The cheirality check means that the
|
|
triangulated 3D points should have positive depth. Some details can be found in CITE: Nister03.
|
|
|
|
This function can be used to process the output E and mask from REF: findEssentialMat. In this
|
|
scenario, points1 and points2 are the same input for #findEssentialMat :
|
|
<code>
|
|
// Example. Estimation of fundamental matrix using the RANSAC algorithm
|
|
int point_count = 100;
|
|
vector<Point2f> points1(point_count);
|
|
vector<Point2f> points2(point_count);
|
|
|
|
// initialize the points here ...
|
|
for( int i = 0; i < point_count; i++ )
|
|
{
|
|
points1[i] = ...;
|
|
points2[i] = ...;
|
|
}
|
|
|
|
// cametra matrix with both focal lengths = 1, and principal point = (0, 0)
|
|
Mat cameraMatrix = Mat::eye(3, 3, CV_64F);
|
|
|
|
Mat E, R, t, mask;
|
|
|
|
E = findEssentialMat(points1, points2, cameraMatrix, RANSAC, 0.999, 1.0, mask);
|
|
recoverPose(E, points1, points2, cameraMatrix, R, t, mask);
|
|
</code></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double distanceThresh)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1.</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
description below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>distanceThresh</code> - threshold distance which is used to filter out far away points (i.e. infinite
|
|
points).
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
|
|
This function differs from the one above that it outputs the triangulated 3D point that are used for
|
|
the cheirality check.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double distanceThresh,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1.</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
description below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>distanceThresh</code> - threshold distance which is used to filter out far away points (i.e. infinite
|
|
points).</dd>
|
|
<dd><code>mask</code> - Input/output mask for inliers in points1 and points2. If it is not empty, then it marks
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
|
|
This function differs from the one above that it outputs the triangulated 3D point that are used for
|
|
the cheirality check.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
double distanceThresh,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> triangulatedPoints)</pre>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1.</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
description below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>distanceThresh</code> - threshold distance which is used to filter out far away points (i.e. infinite
|
|
points).</dd>
|
|
<dd><code>mask</code> - Input/output mask for inliers in points1 and points2. If it is not empty, then it marks
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.</dd>
|
|
<dd><code>triangulatedPoints</code> - 3D points which were reconstructed by triangulation.
|
|
|
|
This function differs from the one above that it outputs the triangulated 3D point that are used for
|
|
the cheirality check.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
<div class="block">Recovers the relative camera rotation and the translation from an estimated essential
|
|
matrix and the corresponding points in two images, using cheirality check. Returns the number of
|
|
inliers that pass the check.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>E</code> - The input essential matrix.</dd>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix</code> - Camera intrinsic matrix \(\cameramatrix{A}\) .
|
|
Note that this function assumes that points1 and points2 are feature points from cameras with the
|
|
same camera intrinsic matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
described below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>mask</code> - Input/output mask for inliers in points1 and points2. If it is not empty, then it marks
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
|
|
This function decomposes an essential matrix using REF: decomposeEssentialMat and then verifies
|
|
possible pose hypotheses by doing cheirality check. The cheirality check means that the
|
|
triangulated 3D points should have positive depth. Some details can be found in CITE: Nister03.
|
|
|
|
This function can be used to process the output E and mask from REF: findEssentialMat. In this
|
|
scenario, points1 and points2 are the same input for #findEssentialMat :
|
|
<code>
|
|
// Example. Estimation of fundamental matrix using the RANSAC algorithm
|
|
int point_count = 100;
|
|
vector<Point2f> points1(point_count);
|
|
vector<Point2f> points2(point_count);
|
|
|
|
// initialize the points here ...
|
|
for( int i = 0; i < point_count; i++ )
|
|
{
|
|
points1[i] = ...;
|
|
points2[i] = ...;
|
|
}
|
|
|
|
// cametra matrix with both focal lengths = 1, and principal point = (0, 0)
|
|
Mat cameraMatrix = Mat::eye(3, 3, CV_64F);
|
|
|
|
Mat E, R, t, mask;
|
|
|
|
E = findEssentialMat(points1, points2, cameraMatrix, RANSAC, 0.999, 1.0, mask);
|
|
recoverPose(E, points1, points2, cameraMatrix, R, t, mask);
|
|
</code></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t)</pre>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check. Returns the number of
|
|
inliers that pass the check.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs1</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix2</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs2</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>E</code> - The output essential matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
described below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
</li>
|
|
</ul>
|
|
|
|
This function decomposes an essential matrix using REF: decomposeEssentialMat and then verifies
|
|
possible pose hypotheses by doing cheirality check. The cheirality check means that the
|
|
triangulated 3D points should have positive depth. Some details can be found in CITE: Nister03.
|
|
|
|
This function can be used to process the output E and mask from REF: findEssentialMat. In this
|
|
scenario, points1 and points2 are the same input for findEssentialMat.:
|
|
<code>
|
|
// Example. Estimation of fundamental matrix using the RANSAC algorithm
|
|
int point_count = 100;
|
|
vector<Point2f> points1(point_count);
|
|
vector<Point2f> points2(point_count);
|
|
|
|
// initialize the points here ...
|
|
for( int i = 0; i < point_count; i++ )
|
|
{
|
|
points1[i] = ...;
|
|
points2[i] = ...;
|
|
}
|
|
|
|
// Input: camera calibration of both cameras, for example using intrinsic chessboard calibration.
|
|
Mat cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2;
|
|
|
|
// Output: Essential matrix, relative rotation and relative translation.
|
|
Mat E, R, t, mask;
|
|
|
|
recoverPose(points1, points2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, E, R, t, mask);
|
|
</code></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
int method)</pre>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check. Returns the number of
|
|
inliers that pass the check.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs1</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix2</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs2</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>E</code> - The output essential matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
described below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.
|
|
confidence (probability) that the estimated matrix is correct.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
</li>
|
|
</ul>
|
|
|
|
This function decomposes an essential matrix using REF: decomposeEssentialMat and then verifies
|
|
possible pose hypotheses by doing cheirality check. The cheirality check means that the
|
|
triangulated 3D points should have positive depth. Some details can be found in CITE: Nister03.
|
|
|
|
This function can be used to process the output E and mask from REF: findEssentialMat. In this
|
|
scenario, points1 and points2 are the same input for findEssentialMat.:
|
|
<code>
|
|
// Example. Estimation of fundamental matrix using the RANSAC algorithm
|
|
int point_count = 100;
|
|
vector<Point2f> points1(point_count);
|
|
vector<Point2f> points2(point_count);
|
|
|
|
// initialize the points here ...
|
|
for( int i = 0; i < point_count; i++ )
|
|
{
|
|
points1[i] = ...;
|
|
points2[i] = ...;
|
|
}
|
|
|
|
// Input: camera calibration of both cameras, for example using intrinsic chessboard calibration.
|
|
Mat cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2;
|
|
|
|
// Output: Essential matrix, relative rotation and relative translation.
|
|
Mat E, R, t, mask;
|
|
|
|
recoverPose(points1, points2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, E, R, t, mask);
|
|
</code></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
int method,
|
|
double prob)</pre>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check. Returns the number of
|
|
inliers that pass the check.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs1</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix2</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs2</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>E</code> - The output essential matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
described below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
</li>
|
|
</ul>
|
|
|
|
This function decomposes an essential matrix using REF: decomposeEssentialMat and then verifies
|
|
possible pose hypotheses by doing cheirality check. The cheirality check means that the
|
|
triangulated 3D points should have positive depth. Some details can be found in CITE: Nister03.
|
|
|
|
This function can be used to process the output E and mask from REF: findEssentialMat. In this
|
|
scenario, points1 and points2 are the same input for findEssentialMat.:
|
|
<code>
|
|
// Example. Estimation of fundamental matrix using the RANSAC algorithm
|
|
int point_count = 100;
|
|
vector<Point2f> points1(point_count);
|
|
vector<Point2f> points2(point_count);
|
|
|
|
// initialize the points here ...
|
|
for( int i = 0; i < point_count; i++ )
|
|
{
|
|
points1[i] = ...;
|
|
points2[i] = ...;
|
|
}
|
|
|
|
// Input: camera calibration of both cameras, for example using intrinsic chessboard calibration.
|
|
Mat cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2;
|
|
|
|
// Output: Essential matrix, relative rotation and relative translation.
|
|
Mat E, R, t, mask;
|
|
|
|
recoverPose(points1, points2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, E, R, t, mask);
|
|
</code></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
int method,
|
|
double prob,
|
|
double threshold)</pre>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check. Returns the number of
|
|
inliers that pass the check.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs1</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix2</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs2</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>E</code> - The output essential matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
described below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
</li>
|
|
</ul>
|
|
|
|
This function decomposes an essential matrix using REF: decomposeEssentialMat and then verifies
|
|
possible pose hypotheses by doing cheirality check. The cheirality check means that the
|
|
triangulated 3D points should have positive depth. Some details can be found in CITE: Nister03.
|
|
|
|
This function can be used to process the output E and mask from REF: findEssentialMat. In this
|
|
scenario, points1 and points2 are the same input for findEssentialMat.:
|
|
<code>
|
|
// Example. Estimation of fundamental matrix using the RANSAC algorithm
|
|
int point_count = 100;
|
|
vector<Point2f> points1(point_count);
|
|
vector<Point2f> points2(point_count);
|
|
|
|
// initialize the points here ...
|
|
for( int i = 0; i < point_count; i++ )
|
|
{
|
|
points1[i] = ...;
|
|
points2[i] = ...;
|
|
}
|
|
|
|
// Input: camera calibration of both cameras, for example using intrinsic chessboard calibration.
|
|
Mat cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2;
|
|
|
|
// Output: Essential matrix, relative rotation and relative translation.
|
|
Mat E, R, t, mask;
|
|
|
|
recoverPose(points1, points2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, E, R, t, mask);
|
|
</code></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="recoverPose-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-double-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>recoverPose</h4>
|
|
<pre>public static int recoverPose(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> t,
|
|
int method,
|
|
double prob,
|
|
double threshold,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mask)</pre>
|
|
<div class="block">Recovers the relative camera rotation and the translation from corresponding points in two images from two different cameras, using cheirality check. Returns the number of
|
|
inliers that pass the check.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of N 2D points from the first image. The point coordinates should be
|
|
floating-point (single or double precision).</dd>
|
|
<dd><code>points2</code> - Array of the second image points of the same size and format as points1 .</dd>
|
|
<dd><code>cameraMatrix1</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs1</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix2</code> - Input/output camera matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs2</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>E</code> - The output essential matrix.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector, this matrix makes up a tuple
|
|
that performs a change of basis from the first camera's coordinate system to the second camera's
|
|
coordinate system. Note that, in general, t can not be used for this tuple, see the parameter
|
|
described below.</dd>
|
|
<dd><code>t</code> - Output translation vector. This vector is obtained by REF: decomposeEssentialMat and
|
|
therefore is only known up to scale, i.e. t is the direction of the translation vector and has unit
|
|
length.</dd>
|
|
<dd><code>method</code> - Method for computing an essential matrix.
|
|
<ul>
|
|
<li>
|
|
REF: RANSAC for the RANSAC algorithm.
|
|
</li>
|
|
<li>
|
|
REF: LMEDS for the LMedS algorithm.</dd>
|
|
<dd><code>prob</code> - Parameter used for the RANSAC or LMedS methods only. It specifies a desirable level of
|
|
confidence (probability) that the estimated matrix is correct.</dd>
|
|
<dd><code>threshold</code> - Parameter used for RANSAC. It is the maximum distance from a point to an epipolar
|
|
line in pixels, beyond which the point is considered an outlier and is not used for computing the
|
|
final fundamental matrix. It can be set to something like 1-3, depending on the accuracy of the
|
|
point localization, image resolution, and the image noise.</dd>
|
|
<dd><code>mask</code> - Input/output mask for inliers in points1 and points2. If it is not empty, then it marks
|
|
inliers in points1 and points2 for then given essential matrix E. Only these inliers will be used to
|
|
recover pose. In the output mask only inliers which pass the cheirality check.
|
|
</li>
|
|
</ul>
|
|
|
|
This function decomposes an essential matrix using REF: decomposeEssentialMat and then verifies
|
|
possible pose hypotheses by doing cheirality check. The cheirality check means that the
|
|
triangulated 3D points should have positive depth. Some details can be found in CITE: Nister03.
|
|
|
|
This function can be used to process the output E and mask from REF: findEssentialMat. In this
|
|
scenario, points1 and points2 are the same input for findEssentialMat.:
|
|
<code>
|
|
// Example. Estimation of fundamental matrix using the RANSAC algorithm
|
|
int point_count = 100;
|
|
vector<Point2f> points1(point_count);
|
|
vector<Point2f> points2(point_count);
|
|
|
|
// initialize the points here ...
|
|
for( int i = 0; i < point_count; i++ )
|
|
{
|
|
points1[i] = ...;
|
|
points2[i] = ...;
|
|
}
|
|
|
|
// Input: camera calibration of both cameras, for example using intrinsic chessboard calibration.
|
|
Mat cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2;
|
|
|
|
// Output: Essential matrix, relative rotation and relative translation.
|
|
Mat E, R, t, mask;
|
|
|
|
recoverPose(points1, points2, cameraMatrix1, distCoeffs1, cameraMatrix2, distCoeffs2, E, R, t, mask);
|
|
</code></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="rectify3Collinear-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-double-org.opencv.core.Size-org.opencv.core.Rect-org.opencv.core.Rect-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>rectify3Collinear</h4>
|
|
<pre>public static float rectify3Collinear(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs3,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imgpt1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imgpt3,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R12,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T12,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R13,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T13,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P3,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImgSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> roi1,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> roi2,
|
|
int flags)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="reprojectImageTo3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>reprojectImageTo3D</h4>
|
|
<pre>public static void reprojectImageTo3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> _3dImage,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q)</pre>
|
|
<div class="block">Reprojects a disparity image to 3D space.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>disparity</code> - Input single-channel 8-bit unsigned, 16-bit signed, 32-bit signed or 32-bit
|
|
floating-point disparity image. The values of 8-bit / 16-bit signed formats are assumed to have no
|
|
fractional bits. If the disparity is 16-bit signed format, as computed by REF: StereoBM or
|
|
REF: StereoSGBM and maybe other algorithms, it should be divided by 16 (and scaled to float) before
|
|
being used here.</dd>
|
|
<dd><code>_3dImage</code> - Output 3-channel floating-point image of the same size as disparity. Each element of
|
|
_3dImage(x,y) contains 3D coordinates of the point (x,y) computed from the disparity map. If one
|
|
uses Q obtained by REF: stereoRectify, then the returned points are represented in the first
|
|
camera's rectified coordinate system.</dd>
|
|
<dd><code>Q</code> - \(4 \times 4\) perspective transformation matrix that can be obtained with
|
|
REF: stereoRectify.
|
|
points where the disparity was not computed). If handleMissingValues=true, then pixels with the
|
|
minimal disparity that corresponds to the outliers (see StereoMatcher::compute ) are transformed
|
|
to 3D points with a very large Z value (currently set to 10000).
|
|
depth. ddepth can also be set to CV_16S, CV_32S or CV_32F.
|
|
|
|
The function transforms a single-channel disparity map to a 3-channel image representing a 3D
|
|
surface. That is, for each pixel (x,y) and the corresponding disparity d=disparity(x,y) , it
|
|
computes:
|
|
|
|
\(\begin{bmatrix}
|
|
X \\
|
|
Y \\
|
|
Z \\
|
|
W
|
|
\end{bmatrix} = Q \begin{bmatrix}
|
|
x \\
|
|
y \\
|
|
\texttt{disparity} (x,y) \\
|
|
z
|
|
\end{bmatrix}.\)
|
|
|
|
SEE:
|
|
To reproject a sparse set of points {(x,y,d),...} to 3D space, use perspectiveTransform.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="reprojectImageTo3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-boolean-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>reprojectImageTo3D</h4>
|
|
<pre>public static void reprojectImageTo3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> _3dImage,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
boolean handleMissingValues)</pre>
|
|
<div class="block">Reprojects a disparity image to 3D space.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>disparity</code> - Input single-channel 8-bit unsigned, 16-bit signed, 32-bit signed or 32-bit
|
|
floating-point disparity image. The values of 8-bit / 16-bit signed formats are assumed to have no
|
|
fractional bits. If the disparity is 16-bit signed format, as computed by REF: StereoBM or
|
|
REF: StereoSGBM and maybe other algorithms, it should be divided by 16 (and scaled to float) before
|
|
being used here.</dd>
|
|
<dd><code>_3dImage</code> - Output 3-channel floating-point image of the same size as disparity. Each element of
|
|
_3dImage(x,y) contains 3D coordinates of the point (x,y) computed from the disparity map. If one
|
|
uses Q obtained by REF: stereoRectify, then the returned points are represented in the first
|
|
camera's rectified coordinate system.</dd>
|
|
<dd><code>Q</code> - \(4 \times 4\) perspective transformation matrix that can be obtained with
|
|
REF: stereoRectify.</dd>
|
|
<dd><code>handleMissingValues</code> - Indicates, whether the function should handle missing values (i.e.
|
|
points where the disparity was not computed). If handleMissingValues=true, then pixels with the
|
|
minimal disparity that corresponds to the outliers (see StereoMatcher::compute ) are transformed
|
|
to 3D points with a very large Z value (currently set to 10000).
|
|
depth. ddepth can also be set to CV_16S, CV_32S or CV_32F.
|
|
|
|
The function transforms a single-channel disparity map to a 3-channel image representing a 3D
|
|
surface. That is, for each pixel (x,y) and the corresponding disparity d=disparity(x,y) , it
|
|
computes:
|
|
|
|
\(\begin{bmatrix}
|
|
X \\
|
|
Y \\
|
|
Z \\
|
|
W
|
|
\end{bmatrix} = Q \begin{bmatrix}
|
|
x \\
|
|
y \\
|
|
\texttt{disparity} (x,y) \\
|
|
z
|
|
\end{bmatrix}.\)
|
|
|
|
SEE:
|
|
To reproject a sparse set of points {(x,y,d),...} to 3D space, use perspectiveTransform.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="reprojectImageTo3D-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>reprojectImageTo3D</h4>
|
|
<pre>public static void reprojectImageTo3D(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> _3dImage,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
boolean handleMissingValues,
|
|
int ddepth)</pre>
|
|
<div class="block">Reprojects a disparity image to 3D space.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>disparity</code> - Input single-channel 8-bit unsigned, 16-bit signed, 32-bit signed or 32-bit
|
|
floating-point disparity image. The values of 8-bit / 16-bit signed formats are assumed to have no
|
|
fractional bits. If the disparity is 16-bit signed format, as computed by REF: StereoBM or
|
|
REF: StereoSGBM and maybe other algorithms, it should be divided by 16 (and scaled to float) before
|
|
being used here.</dd>
|
|
<dd><code>_3dImage</code> - Output 3-channel floating-point image of the same size as disparity. Each element of
|
|
_3dImage(x,y) contains 3D coordinates of the point (x,y) computed from the disparity map. If one
|
|
uses Q obtained by REF: stereoRectify, then the returned points are represented in the first
|
|
camera's rectified coordinate system.</dd>
|
|
<dd><code>Q</code> - \(4 \times 4\) perspective transformation matrix that can be obtained with
|
|
REF: stereoRectify.</dd>
|
|
<dd><code>handleMissingValues</code> - Indicates, whether the function should handle missing values (i.e.
|
|
points where the disparity was not computed). If handleMissingValues=true, then pixels with the
|
|
minimal disparity that corresponds to the outliers (see StereoMatcher::compute ) are transformed
|
|
to 3D points with a very large Z value (currently set to 10000).</dd>
|
|
<dd><code>ddepth</code> - The optional output array depth. If it is -1, the output image will have CV_32F
|
|
depth. ddepth can also be set to CV_16S, CV_32S or CV_32F.
|
|
|
|
The function transforms a single-channel disparity map to a 3-channel image representing a 3D
|
|
surface. That is, for each pixel (x,y) and the corresponding disparity d=disparity(x,y) , it
|
|
computes:
|
|
|
|
\(\begin{bmatrix}
|
|
X \\
|
|
Y \\
|
|
Z \\
|
|
W
|
|
\end{bmatrix} = Q \begin{bmatrix}
|
|
x \\
|
|
y \\
|
|
\texttt{disparity} (x,y) \\
|
|
z
|
|
\end{bmatrix}.\)
|
|
|
|
SEE:
|
|
To reproject a sparse set of points {(x,y,d),...} to 3D space, use perspectiveTransform.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="Rodrigues-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>Rodrigues</h4>
|
|
<pre>public static void Rodrigues(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst)</pre>
|
|
<div class="block">Converts a rotation matrix to a rotation vector or vice versa.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - Input rotation vector (3x1 or 1x3) or rotation matrix (3x3).</dd>
|
|
<dd><code>dst</code> - Output rotation matrix (3x3) or rotation vector (3x1 or 1x3), respectively.
|
|
derivatives of the output array components with respect to the input array components.
|
|
|
|
\(\begin{array}{l} \theta \leftarrow norm(r) \\ r \leftarrow r/ \theta \\ R = \cos(\theta) I + (1- \cos{\theta} ) r r^T + \sin(\theta) \vecthreethree{0}{-r_z}{r_y}{r_z}{0}{-r_x}{-r_y}{r_x}{0} \end{array}\)
|
|
|
|
Inverse transformation can be also done easily, since
|
|
|
|
\(\sin ( \theta ) \vecthreethree{0}{-r_z}{r_y}{r_z}{0}{-r_x}{-r_y}{r_x}{0} = \frac{R - R^T}{2}\)
|
|
|
|
A rotation vector is a convenient and most compact representation of a rotation matrix (since any
|
|
rotation matrix has just 3 degrees of freedom). The representation is used in the global 3D geometry
|
|
optimization procedures like REF: calibrateCamera, REF: stereoCalibrate, or REF: solvePnP .
|
|
|
|
<b>Note:</b> More information about the computation of the derivative of a 3D rotation matrix with respect to its exponential coordinate
|
|
can be found in:
|
|
<ul>
|
|
<li>
|
|
A Compact Formula for the Derivative of a 3-D Rotation in Exponential Coordinates, Guillermo Gallego, Anthony J. Yezzi CITE: Gallego2014ACF
|
|
</li>
|
|
</ul>
|
|
|
|
<b>Note:</b> Useful information on SE(3) and Lie Groups can be found in:
|
|
<ul>
|
|
<li>
|
|
A tutorial on SE(3) transformation parameterizations and on-manifold optimization, Jose-Luis Blanco CITE: blanco2010tutorial
|
|
</li>
|
|
<li>
|
|
Lie Groups for 2D and 3D Transformation, Ethan Eade CITE: Eade17
|
|
</li>
|
|
<li>
|
|
A micro Lie theory for state estimation in robotics, Joan Solà, Jérémie Deray, Dinesh Atchuthan CITE: Sol2018AML
|
|
</li>
|
|
</ul></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="Rodrigues-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>Rodrigues</h4>
|
|
<pre>public static void Rodrigues(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> jacobian)</pre>
|
|
<div class="block">Converts a rotation matrix to a rotation vector or vice versa.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - Input rotation vector (3x1 or 1x3) or rotation matrix (3x3).</dd>
|
|
<dd><code>dst</code> - Output rotation matrix (3x3) or rotation vector (3x1 or 1x3), respectively.</dd>
|
|
<dd><code>jacobian</code> - Optional output Jacobian matrix, 3x9 or 9x3, which is a matrix of partial
|
|
derivatives of the output array components with respect to the input array components.
|
|
|
|
\(\begin{array}{l} \theta \leftarrow norm(r) \\ r \leftarrow r/ \theta \\ R = \cos(\theta) I + (1- \cos{\theta} ) r r^T + \sin(\theta) \vecthreethree{0}{-r_z}{r_y}{r_z}{0}{-r_x}{-r_y}{r_x}{0} \end{array}\)
|
|
|
|
Inverse transformation can be also done easily, since
|
|
|
|
\(\sin ( \theta ) \vecthreethree{0}{-r_z}{r_y}{r_z}{0}{-r_x}{-r_y}{r_x}{0} = \frac{R - R^T}{2}\)
|
|
|
|
A rotation vector is a convenient and most compact representation of a rotation matrix (since any
|
|
rotation matrix has just 3 degrees of freedom). The representation is used in the global 3D geometry
|
|
optimization procedures like REF: calibrateCamera, REF: stereoCalibrate, or REF: solvePnP .
|
|
|
|
<b>Note:</b> More information about the computation of the derivative of a 3D rotation matrix with respect to its exponential coordinate
|
|
can be found in:
|
|
<ul>
|
|
<li>
|
|
A Compact Formula for the Derivative of a 3-D Rotation in Exponential Coordinates, Guillermo Gallego, Anthony J. Yezzi CITE: Gallego2014ACF
|
|
</li>
|
|
</ul>
|
|
|
|
<b>Note:</b> Useful information on SE(3) and Lie Groups can be found in:
|
|
<ul>
|
|
<li>
|
|
A tutorial on SE(3) transformation parameterizations and on-manifold optimization, Jose-Luis Blanco CITE: blanco2010tutorial
|
|
</li>
|
|
<li>
|
|
Lie Groups for 2D and 3D Transformation, Ethan Eade CITE: Eade17
|
|
</li>
|
|
<li>
|
|
A micro Lie theory for state estimation in robotics, Joan Solà, Jérémie Deray, Dinesh Atchuthan CITE: Sol2018AML
|
|
</li>
|
|
</ul></dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="RQDecomp3x3-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>RQDecomp3x3</h4>
|
|
<pre>public static double[] RQDecomp3x3(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxR,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxQ)</pre>
|
|
<div class="block">Computes an RQ decomposition of 3x3 matrices.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - 3x3 input matrix.</dd>
|
|
<dd><code>mtxR</code> - Output 3x3 upper-triangular matrix.</dd>
|
|
<dd><code>mtxQ</code> - Output 3x3 orthogonal matrix.
|
|
|
|
The function computes a RQ decomposition using the given rotations. This function is used in
|
|
#decomposeProjectionMatrix to decompose the left 3x3 submatrix of a projection matrix into a camera
|
|
and a rotation matrix.
|
|
|
|
It optionally returns three rotation matrices, one for each axis, and the three Euler angles in
|
|
degrees (as the return value) that could be used in OpenGL. Note, there is always more than one
|
|
sequence of rotations about the three principal axes that results in the same orientation of an
|
|
object, e.g. see CITE: Slabaugh . Returned tree rotation matrices and corresponding three Euler angles
|
|
are only one of the possible solutions.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="RQDecomp3x3-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>RQDecomp3x3</h4>
|
|
<pre>public static double[] RQDecomp3x3(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxR,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxQ,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qx)</pre>
|
|
<div class="block">Computes an RQ decomposition of 3x3 matrices.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - 3x3 input matrix.</dd>
|
|
<dd><code>mtxR</code> - Output 3x3 upper-triangular matrix.</dd>
|
|
<dd><code>mtxQ</code> - Output 3x3 orthogonal matrix.</dd>
|
|
<dd><code>Qx</code> - Optional output 3x3 rotation matrix around x-axis.
|
|
|
|
The function computes a RQ decomposition using the given rotations. This function is used in
|
|
#decomposeProjectionMatrix to decompose the left 3x3 submatrix of a projection matrix into a camera
|
|
and a rotation matrix.
|
|
|
|
It optionally returns three rotation matrices, one for each axis, and the three Euler angles in
|
|
degrees (as the return value) that could be used in OpenGL. Note, there is always more than one
|
|
sequence of rotations about the three principal axes that results in the same orientation of an
|
|
object, e.g. see CITE: Slabaugh . Returned tree rotation matrices and corresponding three Euler angles
|
|
are only one of the possible solutions.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="RQDecomp3x3-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>RQDecomp3x3</h4>
|
|
<pre>public static double[] RQDecomp3x3(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxR,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxQ,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qx,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qy)</pre>
|
|
<div class="block">Computes an RQ decomposition of 3x3 matrices.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - 3x3 input matrix.</dd>
|
|
<dd><code>mtxR</code> - Output 3x3 upper-triangular matrix.</dd>
|
|
<dd><code>mtxQ</code> - Output 3x3 orthogonal matrix.</dd>
|
|
<dd><code>Qx</code> - Optional output 3x3 rotation matrix around x-axis.</dd>
|
|
<dd><code>Qy</code> - Optional output 3x3 rotation matrix around y-axis.
|
|
|
|
The function computes a RQ decomposition using the given rotations. This function is used in
|
|
#decomposeProjectionMatrix to decompose the left 3x3 submatrix of a projection matrix into a camera
|
|
and a rotation matrix.
|
|
|
|
It optionally returns three rotation matrices, one for each axis, and the three Euler angles in
|
|
degrees (as the return value) that could be used in OpenGL. Note, there is always more than one
|
|
sequence of rotations about the three principal axes that results in the same orientation of an
|
|
object, e.g. see CITE: Slabaugh . Returned tree rotation matrices and corresponding three Euler angles
|
|
are only one of the possible solutions.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="RQDecomp3x3-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>RQDecomp3x3</h4>
|
|
<pre>public static double[] RQDecomp3x3(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxR,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> mtxQ,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qx,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qy,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Qz)</pre>
|
|
<div class="block">Computes an RQ decomposition of 3x3 matrices.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - 3x3 input matrix.</dd>
|
|
<dd><code>mtxR</code> - Output 3x3 upper-triangular matrix.</dd>
|
|
<dd><code>mtxQ</code> - Output 3x3 orthogonal matrix.</dd>
|
|
<dd><code>Qx</code> - Optional output 3x3 rotation matrix around x-axis.</dd>
|
|
<dd><code>Qy</code> - Optional output 3x3 rotation matrix around y-axis.</dd>
|
|
<dd><code>Qz</code> - Optional output 3x3 rotation matrix around z-axis.
|
|
|
|
The function computes a RQ decomposition using the given rotations. This function is used in
|
|
#decomposeProjectionMatrix to decompose the left 3x3 submatrix of a projection matrix into a camera
|
|
and a rotation matrix.
|
|
|
|
It optionally returns three rotation matrices, one for each axis, and the three Euler angles in
|
|
degrees (as the return value) that could be used in OpenGL. Note, there is always more than one
|
|
sequence of rotations about the three principal axes that results in the same orientation of an
|
|
object, e.g. see CITE: Slabaugh . Returned tree rotation matrices and corresponding three Euler angles
|
|
are only one of the possible solutions.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="sampsonDistance-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>sampsonDistance</h4>
|
|
<pre>public static double sampsonDistance(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pt1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> pt2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F)</pre>
|
|
<div class="block">Calculates the Sampson Distance between two points.
|
|
|
|
The function cv::sampsonDistance calculates and returns the first order approximation of the geometric error as:
|
|
\(
|
|
sd( \texttt{pt1} , \texttt{pt2} )=
|
|
\frac{(\texttt{pt2}^t \cdot \texttt{F} \cdot \texttt{pt1})^2}
|
|
{((\texttt{F} \cdot \texttt{pt1})(0))^2 +
|
|
((\texttt{F} \cdot \texttt{pt1})(1))^2 +
|
|
((\texttt{F}^t \cdot \texttt{pt2})(0))^2 +
|
|
((\texttt{F}^t \cdot \texttt{pt2})(1))^2}
|
|
\)
|
|
The fundamental matrix may be calculated using the #findFundamentalMat function. See CITE: HartleyZ00 11.4.3 for details.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>pt1</code> - first homogeneous 2d point</dd>
|
|
<dd><code>pt2</code> - second homogeneous 2d point</dd>
|
|
<dd><code>F</code> - fundamental matrix</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>The computed Sampson distance.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solveP3P-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solveP3P</h4>
|
|
<pre>public static int solveP3P(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
int flags)</pre>
|
|
<div class="block">Finds an object pose from 3 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, 3x3 1-channel or
|
|
1x3/3x1 3-channel. vector<Point3f> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, 3x2 1-channel or 1x3/3x1 2-channel.
|
|
vector<Point2f> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvecs</code> - Output rotation vectors (see REF: Rodrigues ) that, together with tvecs, brings points from
|
|
the model coordinate system to the camera coordinate system. A P3P problem has up to 4 solutions.</dd>
|
|
<dd><code>tvecs</code> - Output translation vectors.</dd>
|
|
<dd><code>flags</code> - Method for solving a P3P problem:
|
|
<ul>
|
|
<li>
|
|
REF: SOLVEPNP_P3P Method is based on the paper of X.S. Gao, X.-R. Hou, J. Tang, H.-F. Chang
|
|
"Complete Solution Classification for the Perspective-Three-Point Problem" (CITE: gao2003complete).
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_AP3P Method is based on the paper of T. Ke and S. Roumeliotis.
|
|
"An Efficient Algebraic Solution to the Perspective-Three-Point Problem" (CITE: Ke17).
|
|
</li>
|
|
</ul>
|
|
|
|
The function estimates the object pose given 3 object points, their corresponding image
|
|
projections, as well as the camera intrinsic matrix and the distortion coefficients.
|
|
|
|
<b>Note:</b>
|
|
The solutions are sorted by reprojection errors (lowest to highest).</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnP-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnP</h4>
|
|
<pre>public static boolean solvePnP(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP
|
|
|
|
This function returns the rotation and the translation vectors that transform a 3D point expressed in the object
|
|
coordinate frame to the camera coordinate frame, using different methods:
|
|
<ul>
|
|
<li>
|
|
P3P methods (REF: SOLVEPNP_P3P, REF: SOLVEPNP_AP3P): need 4 input points to return a unique solution.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE Input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE_SQUARE Special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
for all the other flags, number of input points must be >= 4 and object points can be in any configuration.
|
|
</li>
|
|
</ul></div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.
|
|
|
|
More information about Perspective-n-Points is described in REF: calib3d_solvePnP
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePnP for planar augmented reality can be found at
|
|
opencv_source_code/samples/python/plane_ar.py
|
|
</li>
|
|
<li>
|
|
If you are using Python:
|
|
<ul>
|
|
<li>
|
|
Numpy array slices won't work as input because solvePnP requires contiguous
|
|
arrays (enforced by the assertion using cv::Mat::checkVector() around line 55 of
|
|
modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
</li>
|
|
<li>
|
|
The P3P algorithm requires image points to be in an array of shape (N,1,2) due
|
|
to its calling of #undistortPoints (around line 75 of modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
which requires 2-channel information.
|
|
</li>
|
|
<li>
|
|
Thus, given some data D = np.array(...) where D.shape = (N,M), in order to use a subset of
|
|
it as, e.g., imagePoints, one must effectively copy it into a new array: imagePoints =
|
|
np.ascontiguousarray(D[:,:2]).reshape((N,1,2))
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The methods REF: SOLVEPNP_DLS and REF: SOLVEPNP_UPNP cannot be used as the current implementations are
|
|
unstable and sometimes give completely wrong results. If you pass one of these two
|
|
flags, REF: SOLVEPNP_EPNP method will be used instead.
|
|
</li>
|
|
<li>
|
|
The minimum number of points is 4 in the general case. In the case of REF: SOLVEPNP_P3P and REF: SOLVEPNP_AP3P
|
|
methods, it is required to use exactly 4 points (the first 3 points are used to estimate all the solutions
|
|
of the P3P problem, the last one is used to retain the best solution that minimizes the reprojection error).
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_ITERATIVE method and <code>useExtrinsicGuess=true</code>, the minimum number of points is 3 (3 points
|
|
are sufficient to compute a pose but there are up to 4 solutions). The initial solution should be close to the
|
|
global solution to converge.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE_SQUARE this is a special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
With REF: SOLVEPNP_SQPNP input points must be >= 3
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnP-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnP</h4>
|
|
<pre>public static boolean solvePnP(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP
|
|
|
|
This function returns the rotation and the translation vectors that transform a 3D point expressed in the object
|
|
coordinate frame to the camera coordinate frame, using different methods:
|
|
<ul>
|
|
<li>
|
|
P3P methods (REF: SOLVEPNP_P3P, REF: SOLVEPNP_AP3P): need 4 input points to return a unique solution.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE Input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE_SQUARE Special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
for all the other flags, number of input points must be >= 4 and object points can be in any configuration.
|
|
</li>
|
|
</ul></div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for #SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.
|
|
|
|
More information about Perspective-n-Points is described in REF: calib3d_solvePnP
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePnP for planar augmented reality can be found at
|
|
opencv_source_code/samples/python/plane_ar.py
|
|
</li>
|
|
<li>
|
|
If you are using Python:
|
|
<ul>
|
|
<li>
|
|
Numpy array slices won't work as input because solvePnP requires contiguous
|
|
arrays (enforced by the assertion using cv::Mat::checkVector() around line 55 of
|
|
modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
</li>
|
|
<li>
|
|
The P3P algorithm requires image points to be in an array of shape (N,1,2) due
|
|
to its calling of #undistortPoints (around line 75 of modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
which requires 2-channel information.
|
|
</li>
|
|
<li>
|
|
Thus, given some data D = np.array(...) where D.shape = (N,M), in order to use a subset of
|
|
it as, e.g., imagePoints, one must effectively copy it into a new array: imagePoints =
|
|
np.ascontiguousarray(D[:,:2]).reshape((N,1,2))
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The methods REF: SOLVEPNP_DLS and REF: SOLVEPNP_UPNP cannot be used as the current implementations are
|
|
unstable and sometimes give completely wrong results. If you pass one of these two
|
|
flags, REF: SOLVEPNP_EPNP method will be used instead.
|
|
</li>
|
|
<li>
|
|
The minimum number of points is 4 in the general case. In the case of REF: SOLVEPNP_P3P and REF: SOLVEPNP_AP3P
|
|
methods, it is required to use exactly 4 points (the first 3 points are used to estimate all the solutions
|
|
of the P3P problem, the last one is used to retain the best solution that minimizes the reprojection error).
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_ITERATIVE method and <code>useExtrinsicGuess=true</code>, the minimum number of points is 3 (3 points
|
|
are sufficient to compute a pose but there are up to 4 solutions). The initial solution should be close to the
|
|
global solution to converge.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE_SQUARE this is a special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
With REF: SOLVEPNP_SQPNP input points must be >= 3
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnP-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnP</h4>
|
|
<pre>public static boolean solvePnP(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int flags)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP
|
|
|
|
This function returns the rotation and the translation vectors that transform a 3D point expressed in the object
|
|
coordinate frame to the camera coordinate frame, using different methods:
|
|
<ul>
|
|
<li>
|
|
P3P methods (REF: SOLVEPNP_P3P, REF: SOLVEPNP_AP3P): need 4 input points to return a unique solution.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE Input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE_SQUARE Special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
for all the other flags, number of input points must be >= 4 and object points can be in any configuration.
|
|
</li>
|
|
</ul></div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for #SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>flags</code> - Method for solving a PnP problem: see REF: calib3d_solvePnP_flags
|
|
|
|
More information about Perspective-n-Points is described in REF: calib3d_solvePnP
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePnP for planar augmented reality can be found at
|
|
opencv_source_code/samples/python/plane_ar.py
|
|
</li>
|
|
<li>
|
|
If you are using Python:
|
|
<ul>
|
|
<li>
|
|
Numpy array slices won't work as input because solvePnP requires contiguous
|
|
arrays (enforced by the assertion using cv::Mat::checkVector() around line 55 of
|
|
modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
</li>
|
|
<li>
|
|
The P3P algorithm requires image points to be in an array of shape (N,1,2) due
|
|
to its calling of #undistortPoints (around line 75 of modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
which requires 2-channel information.
|
|
</li>
|
|
<li>
|
|
Thus, given some data D = np.array(...) where D.shape = (N,M), in order to use a subset of
|
|
it as, e.g., imagePoints, one must effectively copy it into a new array: imagePoints =
|
|
np.ascontiguousarray(D[:,:2]).reshape((N,1,2))
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The methods REF: SOLVEPNP_DLS and REF: SOLVEPNP_UPNP cannot be used as the current implementations are
|
|
unstable and sometimes give completely wrong results. If you pass one of these two
|
|
flags, REF: SOLVEPNP_EPNP method will be used instead.
|
|
</li>
|
|
<li>
|
|
The minimum number of points is 4 in the general case. In the case of REF: SOLVEPNP_P3P and REF: SOLVEPNP_AP3P
|
|
methods, it is required to use exactly 4 points (the first 3 points are used to estimate all the solutions
|
|
of the P3P problem, the last one is used to retain the best solution that minimizes the reprojection error).
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_ITERATIVE method and <code>useExtrinsicGuess=true</code>, the minimum number of points is 3 (3 points
|
|
are sufficient to compute a pose but there are up to 4 solutions). The initial solution should be close to the
|
|
global solution to converge.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE_SQUARE this is a special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<ul>
|
|
<li>
|
|
With REF: SOLVEPNP_SQPNP input points must be >= 3
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPGeneric</h4>
|
|
<pre>public static int solvePnPGeneric(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP
|
|
|
|
This function returns a list of all the possible solutions (a solution is a <rotation vector, translation vector>
|
|
couple), depending on the number of input points and the chosen method:
|
|
<ul>
|
|
<li>
|
|
P3P methods (REF: SOLVEPNP_P3P, REF: SOLVEPNP_AP3P): 3 or 4 input points. Number of returned solutions can be between 0 and 4 with 3 input points.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE Input points must be >= 4 and object points must be coplanar. Returns 2 solutions.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE_SQUARE Special case suitable for marker pose estimation.
|
|
Number of input points must be 4 and 2 solutions are returned. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
for all the other flags, number of input points must be >= 4 and object points can be in any configuration.
|
|
Only 1 solution is returned.
|
|
</li>
|
|
</ul></div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvecs</code> - Vector of output rotation vectors (see REF: Rodrigues ) that, together with tvecs, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvecs</code> - Vector of output translation vectors.
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.
|
|
and useExtrinsicGuess is set to true.
|
|
and useExtrinsicGuess is set to true.
|
|
(\( \text{RMSE} = \sqrt{\frac{\sum_{i}^{N} \left ( \hat{y_i} - y_i \right )^2}{N}} \)) between the input image points
|
|
and the 3D object points projected with the estimated pose.
|
|
|
|
More information is described in REF: calib3d_solvePnP
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePnP for planar augmented reality can be found at
|
|
opencv_source_code/samples/python/plane_ar.py
|
|
</li>
|
|
<li>
|
|
If you are using Python:
|
|
<ul>
|
|
<li>
|
|
Numpy array slices won't work as input because solvePnP requires contiguous
|
|
arrays (enforced by the assertion using cv::Mat::checkVector() around line 55 of
|
|
modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
</li>
|
|
<li>
|
|
The P3P algorithm requires image points to be in an array of shape (N,1,2) due
|
|
to its calling of #undistortPoints (around line 75 of modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
which requires 2-channel information.
|
|
</li>
|
|
<li>
|
|
Thus, given some data D = np.array(...) where D.shape = (N,M), in order to use a subset of
|
|
it as, e.g., imagePoints, one must effectively copy it into a new array: imagePoints =
|
|
np.ascontiguousarray(D[:,:2]).reshape((N,1,2))
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The methods REF: SOLVEPNP_DLS and REF: SOLVEPNP_UPNP cannot be used as the current implementations are
|
|
unstable and sometimes give completely wrong results. If you pass one of these two
|
|
flags, REF: SOLVEPNP_EPNP method will be used instead.
|
|
</li>
|
|
<li>
|
|
The minimum number of points is 4 in the general case. In the case of REF: SOLVEPNP_P3P and REF: SOLVEPNP_AP3P
|
|
methods, it is required to use exactly 4 points (the first 3 points are used to estimate all the solutions
|
|
of the P3P problem, the last one is used to retain the best solution that minimizes the reprojection error).
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_ITERATIVE method and <code>useExtrinsicGuess=true</code>, the minimum number of points is 3 (3 points
|
|
are sufficient to compute a pose but there are up to 4 solutions). The initial solution should be close to the
|
|
global solution to converge.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE_SQUARE this is a special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPGeneric</h4>
|
|
<pre>public static int solvePnPGeneric(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP
|
|
|
|
This function returns a list of all the possible solutions (a solution is a <rotation vector, translation vector>
|
|
couple), depending on the number of input points and the chosen method:
|
|
<ul>
|
|
<li>
|
|
P3P methods (REF: SOLVEPNP_P3P, REF: SOLVEPNP_AP3P): 3 or 4 input points. Number of returned solutions can be between 0 and 4 with 3 input points.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE Input points must be >= 4 and object points must be coplanar. Returns 2 solutions.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE_SQUARE Special case suitable for marker pose estimation.
|
|
Number of input points must be 4 and 2 solutions are returned. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
for all the other flags, number of input points must be >= 4 and object points can be in any configuration.
|
|
Only 1 solution is returned.
|
|
</li>
|
|
</ul></div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvecs</code> - Vector of output rotation vectors (see REF: Rodrigues ) that, together with tvecs, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvecs</code> - Vector of output translation vectors.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for #SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.
|
|
and useExtrinsicGuess is set to true.
|
|
and useExtrinsicGuess is set to true.
|
|
(\( \text{RMSE} = \sqrt{\frac{\sum_{i}^{N} \left ( \hat{y_i} - y_i \right )^2}{N}} \)) between the input image points
|
|
and the 3D object points projected with the estimated pose.
|
|
|
|
More information is described in REF: calib3d_solvePnP
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePnP for planar augmented reality can be found at
|
|
opencv_source_code/samples/python/plane_ar.py
|
|
</li>
|
|
<li>
|
|
If you are using Python:
|
|
<ul>
|
|
<li>
|
|
Numpy array slices won't work as input because solvePnP requires contiguous
|
|
arrays (enforced by the assertion using cv::Mat::checkVector() around line 55 of
|
|
modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
</li>
|
|
<li>
|
|
The P3P algorithm requires image points to be in an array of shape (N,1,2) due
|
|
to its calling of #undistortPoints (around line 75 of modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
which requires 2-channel information.
|
|
</li>
|
|
<li>
|
|
Thus, given some data D = np.array(...) where D.shape = (N,M), in order to use a subset of
|
|
it as, e.g., imagePoints, one must effectively copy it into a new array: imagePoints =
|
|
np.ascontiguousarray(D[:,:2]).reshape((N,1,2))
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The methods REF: SOLVEPNP_DLS and REF: SOLVEPNP_UPNP cannot be used as the current implementations are
|
|
unstable and sometimes give completely wrong results. If you pass one of these two
|
|
flags, REF: SOLVEPNP_EPNP method will be used instead.
|
|
</li>
|
|
<li>
|
|
The minimum number of points is 4 in the general case. In the case of REF: SOLVEPNP_P3P and REF: SOLVEPNP_AP3P
|
|
methods, it is required to use exactly 4 points (the first 3 points are used to estimate all the solutions
|
|
of the P3P problem, the last one is used to retain the best solution that minimizes the reprojection error).
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_ITERATIVE method and <code>useExtrinsicGuess=true</code>, the minimum number of points is 3 (3 points
|
|
are sufficient to compute a pose but there are up to 4 solutions). The initial solution should be close to the
|
|
global solution to converge.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE_SQUARE this is a special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPGeneric</h4>
|
|
<pre>public static int solvePnPGeneric(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess,
|
|
int flags)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP
|
|
|
|
This function returns a list of all the possible solutions (a solution is a <rotation vector, translation vector>
|
|
couple), depending on the number of input points and the chosen method:
|
|
<ul>
|
|
<li>
|
|
P3P methods (REF: SOLVEPNP_P3P, REF: SOLVEPNP_AP3P): 3 or 4 input points. Number of returned solutions can be between 0 and 4 with 3 input points.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE Input points must be >= 4 and object points must be coplanar. Returns 2 solutions.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE_SQUARE Special case suitable for marker pose estimation.
|
|
Number of input points must be 4 and 2 solutions are returned. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
for all the other flags, number of input points must be >= 4 and object points can be in any configuration.
|
|
Only 1 solution is returned.
|
|
</li>
|
|
</ul></div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvecs</code> - Vector of output rotation vectors (see REF: Rodrigues ) that, together with tvecs, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvecs</code> - Vector of output translation vectors.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for #SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>flags</code> - Method for solving a PnP problem: see REF: calib3d_solvePnP_flags
|
|
and useExtrinsicGuess is set to true.
|
|
and useExtrinsicGuess is set to true.
|
|
(\( \text{RMSE} = \sqrt{\frac{\sum_{i}^{N} \left ( \hat{y_i} - y_i \right )^2}{N}} \)) between the input image points
|
|
and the 3D object points projected with the estimated pose.
|
|
|
|
More information is described in REF: calib3d_solvePnP
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePnP for planar augmented reality can be found at
|
|
opencv_source_code/samples/python/plane_ar.py
|
|
</li>
|
|
<li>
|
|
If you are using Python:
|
|
<ul>
|
|
<li>
|
|
Numpy array slices won't work as input because solvePnP requires contiguous
|
|
arrays (enforced by the assertion using cv::Mat::checkVector() around line 55 of
|
|
modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
</li>
|
|
<li>
|
|
The P3P algorithm requires image points to be in an array of shape (N,1,2) due
|
|
to its calling of #undistortPoints (around line 75 of modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
which requires 2-channel information.
|
|
</li>
|
|
<li>
|
|
Thus, given some data D = np.array(...) where D.shape = (N,M), in order to use a subset of
|
|
it as, e.g., imagePoints, one must effectively copy it into a new array: imagePoints =
|
|
np.ascontiguousarray(D[:,:2]).reshape((N,1,2))
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The methods REF: SOLVEPNP_DLS and REF: SOLVEPNP_UPNP cannot be used as the current implementations are
|
|
unstable and sometimes give completely wrong results. If you pass one of these two
|
|
flags, REF: SOLVEPNP_EPNP method will be used instead.
|
|
</li>
|
|
<li>
|
|
The minimum number of points is 4 in the general case. In the case of REF: SOLVEPNP_P3P and REF: SOLVEPNP_AP3P
|
|
methods, it is required to use exactly 4 points (the first 3 points are used to estimate all the solutions
|
|
of the P3P problem, the last one is used to retain the best solution that minimizes the reprojection error).
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_ITERATIVE method and <code>useExtrinsicGuess=true</code>, the minimum number of points is 3 (3 points
|
|
are sufficient to compute a pose but there are up to 4 solutions). The initial solution should be close to the
|
|
global solution to converge.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE_SQUARE this is a special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-int-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPGeneric</h4>
|
|
<pre>public static int solvePnPGeneric(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP
|
|
|
|
This function returns a list of all the possible solutions (a solution is a <rotation vector, translation vector>
|
|
couple), depending on the number of input points and the chosen method:
|
|
<ul>
|
|
<li>
|
|
P3P methods (REF: SOLVEPNP_P3P, REF: SOLVEPNP_AP3P): 3 or 4 input points. Number of returned solutions can be between 0 and 4 with 3 input points.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE Input points must be >= 4 and object points must be coplanar. Returns 2 solutions.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE_SQUARE Special case suitable for marker pose estimation.
|
|
Number of input points must be 4 and 2 solutions are returned. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
for all the other flags, number of input points must be >= 4 and object points can be in any configuration.
|
|
Only 1 solution is returned.
|
|
</li>
|
|
</ul></div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvecs</code> - Vector of output rotation vectors (see REF: Rodrigues ) that, together with tvecs, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvecs</code> - Vector of output translation vectors.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for #SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>flags</code> - Method for solving a PnP problem: see REF: calib3d_solvePnP_flags</dd>
|
|
<dd><code>rvec</code> - Rotation vector used to initialize an iterative PnP refinement algorithm, when flag is REF: SOLVEPNP_ITERATIVE
|
|
and useExtrinsicGuess is set to true.
|
|
and useExtrinsicGuess is set to true.
|
|
(\( \text{RMSE} = \sqrt{\frac{\sum_{i}^{N} \left ( \hat{y_i} - y_i \right )^2}{N}} \)) between the input image points
|
|
and the 3D object points projected with the estimated pose.
|
|
|
|
More information is described in REF: calib3d_solvePnP
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePnP for planar augmented reality can be found at
|
|
opencv_source_code/samples/python/plane_ar.py
|
|
</li>
|
|
<li>
|
|
If you are using Python:
|
|
<ul>
|
|
<li>
|
|
Numpy array slices won't work as input because solvePnP requires contiguous
|
|
arrays (enforced by the assertion using cv::Mat::checkVector() around line 55 of
|
|
modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
</li>
|
|
<li>
|
|
The P3P algorithm requires image points to be in an array of shape (N,1,2) due
|
|
to its calling of #undistortPoints (around line 75 of modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
which requires 2-channel information.
|
|
</li>
|
|
<li>
|
|
Thus, given some data D = np.array(...) where D.shape = (N,M), in order to use a subset of
|
|
it as, e.g., imagePoints, one must effectively copy it into a new array: imagePoints =
|
|
np.ascontiguousarray(D[:,:2]).reshape((N,1,2))
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The methods REF: SOLVEPNP_DLS and REF: SOLVEPNP_UPNP cannot be used as the current implementations are
|
|
unstable and sometimes give completely wrong results. If you pass one of these two
|
|
flags, REF: SOLVEPNP_EPNP method will be used instead.
|
|
</li>
|
|
<li>
|
|
The minimum number of points is 4 in the general case. In the case of REF: SOLVEPNP_P3P and REF: SOLVEPNP_AP3P
|
|
methods, it is required to use exactly 4 points (the first 3 points are used to estimate all the solutions
|
|
of the P3P problem, the last one is used to retain the best solution that minimizes the reprojection error).
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_ITERATIVE method and <code>useExtrinsicGuess=true</code>, the minimum number of points is 3 (3 points
|
|
are sufficient to compute a pose but there are up to 4 solutions). The initial solution should be close to the
|
|
global solution to converge.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE_SQUARE this is a special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-int-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPGeneric</h4>
|
|
<pre>public static int solvePnPGeneric(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP
|
|
|
|
This function returns a list of all the possible solutions (a solution is a <rotation vector, translation vector>
|
|
couple), depending on the number of input points and the chosen method:
|
|
<ul>
|
|
<li>
|
|
P3P methods (REF: SOLVEPNP_P3P, REF: SOLVEPNP_AP3P): 3 or 4 input points. Number of returned solutions can be between 0 and 4 with 3 input points.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE Input points must be >= 4 and object points must be coplanar. Returns 2 solutions.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE_SQUARE Special case suitable for marker pose estimation.
|
|
Number of input points must be 4 and 2 solutions are returned. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
for all the other flags, number of input points must be >= 4 and object points can be in any configuration.
|
|
Only 1 solution is returned.
|
|
</li>
|
|
</ul></div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvecs</code> - Vector of output rotation vectors (see REF: Rodrigues ) that, together with tvecs, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvecs</code> - Vector of output translation vectors.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for #SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>flags</code> - Method for solving a PnP problem: see REF: calib3d_solvePnP_flags</dd>
|
|
<dd><code>rvec</code> - Rotation vector used to initialize an iterative PnP refinement algorithm, when flag is REF: SOLVEPNP_ITERATIVE
|
|
and useExtrinsicGuess is set to true.</dd>
|
|
<dd><code>tvec</code> - Translation vector used to initialize an iterative PnP refinement algorithm, when flag is REF: SOLVEPNP_ITERATIVE
|
|
and useExtrinsicGuess is set to true.
|
|
(\( \text{RMSE} = \sqrt{\frac{\sum_{i}^{N} \left ( \hat{y_i} - y_i \right )^2}{N}} \)) between the input image points
|
|
and the 3D object points projected with the estimated pose.
|
|
|
|
More information is described in REF: calib3d_solvePnP
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePnP for planar augmented reality can be found at
|
|
opencv_source_code/samples/python/plane_ar.py
|
|
</li>
|
|
<li>
|
|
If you are using Python:
|
|
<ul>
|
|
<li>
|
|
Numpy array slices won't work as input because solvePnP requires contiguous
|
|
arrays (enforced by the assertion using cv::Mat::checkVector() around line 55 of
|
|
modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
</li>
|
|
<li>
|
|
The P3P algorithm requires image points to be in an array of shape (N,1,2) due
|
|
to its calling of #undistortPoints (around line 75 of modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
which requires 2-channel information.
|
|
</li>
|
|
<li>
|
|
Thus, given some data D = np.array(...) where D.shape = (N,M), in order to use a subset of
|
|
it as, e.g., imagePoints, one must effectively copy it into a new array: imagePoints =
|
|
np.ascontiguousarray(D[:,:2]).reshape((N,1,2))
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The methods REF: SOLVEPNP_DLS and REF: SOLVEPNP_UPNP cannot be used as the current implementations are
|
|
unstable and sometimes give completely wrong results. If you pass one of these two
|
|
flags, REF: SOLVEPNP_EPNP method will be used instead.
|
|
</li>
|
|
<li>
|
|
The minimum number of points is 4 in the general case. In the case of REF: SOLVEPNP_P3P and REF: SOLVEPNP_AP3P
|
|
methods, it is required to use exactly 4 points (the first 3 points are used to estimate all the solutions
|
|
of the P3P problem, the last one is used to retain the best solution that minimizes the reprojection error).
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_ITERATIVE method and <code>useExtrinsicGuess=true</code>, the minimum number of points is 3 (3 points
|
|
are sufficient to compute a pose but there are up to 4 solutions). The initial solution should be close to the
|
|
global solution to converge.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE_SQUARE this is a special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPGeneric-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-java.util.List-java.util.List-boolean-int-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPGeneric</h4>
|
|
<pre>public static int solvePnPGeneric(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> rvecs,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> tvecs,
|
|
boolean useExtrinsicGuess,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> reprojectionError)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences.
|
|
|
|
SEE: REF: calib3d_solvePnP
|
|
|
|
This function returns a list of all the possible solutions (a solution is a <rotation vector, translation vector>
|
|
couple), depending on the number of input points and the chosen method:
|
|
<ul>
|
|
<li>
|
|
P3P methods (REF: SOLVEPNP_P3P, REF: SOLVEPNP_AP3P): 3 or 4 input points. Number of returned solutions can be between 0 and 4 with 3 input points.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE Input points must be >= 4 and object points must be coplanar. Returns 2 solutions.
|
|
</li>
|
|
<li>
|
|
REF: SOLVEPNP_IPPE_SQUARE Special case suitable for marker pose estimation.
|
|
Number of input points must be 4 and 2 solutions are returned. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
for all the other flags, number of input points must be >= 4 and object points can be in any configuration.
|
|
Only 1 solution is returned.
|
|
</li>
|
|
</ul></div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvecs</code> - Vector of output rotation vectors (see REF: Rodrigues ) that, together with tvecs, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvecs</code> - Vector of output translation vectors.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for #SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>flags</code> - Method for solving a PnP problem: see REF: calib3d_solvePnP_flags</dd>
|
|
<dd><code>rvec</code> - Rotation vector used to initialize an iterative PnP refinement algorithm, when flag is REF: SOLVEPNP_ITERATIVE
|
|
and useExtrinsicGuess is set to true.</dd>
|
|
<dd><code>tvec</code> - Translation vector used to initialize an iterative PnP refinement algorithm, when flag is REF: SOLVEPNP_ITERATIVE
|
|
and useExtrinsicGuess is set to true.</dd>
|
|
<dd><code>reprojectionError</code> - Optional vector of reprojection error, that is the RMS error
|
|
(\( \text{RMSE} = \sqrt{\frac{\sum_{i}^{N} \left ( \hat{y_i} - y_i \right )^2}{N}} \)) between the input image points
|
|
and the 3D object points projected with the estimated pose.
|
|
|
|
More information is described in REF: calib3d_solvePnP
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePnP for planar augmented reality can be found at
|
|
opencv_source_code/samples/python/plane_ar.py
|
|
</li>
|
|
<li>
|
|
If you are using Python:
|
|
<ul>
|
|
<li>
|
|
Numpy array slices won't work as input because solvePnP requires contiguous
|
|
arrays (enforced by the assertion using cv::Mat::checkVector() around line 55 of
|
|
modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
</li>
|
|
<li>
|
|
The P3P algorithm requires image points to be in an array of shape (N,1,2) due
|
|
to its calling of #undistortPoints (around line 75 of modules/calib3d/src/solvepnp.cpp version 2.4.9)
|
|
which requires 2-channel information.
|
|
</li>
|
|
<li>
|
|
Thus, given some data D = np.array(...) where D.shape = (N,M), in order to use a subset of
|
|
it as, e.g., imagePoints, one must effectively copy it into a new array: imagePoints =
|
|
np.ascontiguousarray(D[:,:2]).reshape((N,1,2))
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The methods REF: SOLVEPNP_DLS and REF: SOLVEPNP_UPNP cannot be used as the current implementations are
|
|
unstable and sometimes give completely wrong results. If you pass one of these two
|
|
flags, REF: SOLVEPNP_EPNP method will be used instead.
|
|
</li>
|
|
<li>
|
|
The minimum number of points is 4 in the general case. In the case of REF: SOLVEPNP_P3P and REF: SOLVEPNP_AP3P
|
|
methods, it is required to use exactly 4 points (the first 3 points are used to estimate all the solutions
|
|
of the P3P problem, the last one is used to retain the best solution that minimizes the reprojection error).
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_ITERATIVE method and <code>useExtrinsicGuess=true</code>, the minimum number of points is 3 (3 points
|
|
are sufficient to compute a pose but there are up to 4 solutions). The initial solution should be close to the
|
|
global solution to converge.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE input points must be >= 4 and object points must be coplanar.
|
|
</li>
|
|
<li>
|
|
With REF: SOLVEPNP_IPPE_SQUARE this is a special case suitable for marker pose estimation.
|
|
Number of input points must be 4. Object points must be defined in the following order:
|
|
<ul>
|
|
<li>
|
|
point 0: [-squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 1: [ squareLength / 2, squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 2: [ squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
<li>
|
|
point 3: [-squareLength / 2, -squareLength / 2, 0]
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRansac</h4>
|
|
<pre>public static boolean solvePnPRansac(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.
|
|
is the maximum allowed distance between the observed and computed point projections to consider it
|
|
an inlier.
|
|
|
|
The function estimates an object pose given a set of object points, their corresponding image
|
|
projections, as well as the camera intrinsic matrix and the distortion coefficients. This function finds such
|
|
a pose that minimizes reprojection error, that is, the sum of squared distances between the observed
|
|
projections imagePoints and the projected (using REF: projectPoints ) objectPoints. The use of RANSAC
|
|
makes the function resistant to outliers.
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePNPRansac for object detection can be found at
|
|
opencv_source_code/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/
|
|
</li>
|
|
<li>
|
|
The default method used to estimate the camera pose for the Minimal Sample Sets step
|
|
is #SOLVEPNP_EPNP. Exceptions are:
|
|
<ul>
|
|
<li>
|
|
if you choose #SOLVEPNP_P3P or #SOLVEPNP_AP3P, these methods will be used.
|
|
</li>
|
|
<li>
|
|
if the number of input points is equal to 4, #SOLVEPNP_P3P is used.
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The method used to estimate the camera pose using all the inliers is defined by the
|
|
flags parameters unless it is equal to #SOLVEPNP_P3P or #SOLVEPNP_AP3P. In this case,
|
|
the method #SOLVEPNP_EPNP will be used instead.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRansac</h4>
|
|
<pre>public static boolean solvePnPRansac(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for REF: SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.
|
|
is the maximum allowed distance between the observed and computed point projections to consider it
|
|
an inlier.
|
|
|
|
The function estimates an object pose given a set of object points, their corresponding image
|
|
projections, as well as the camera intrinsic matrix and the distortion coefficients. This function finds such
|
|
a pose that minimizes reprojection error, that is, the sum of squared distances between the observed
|
|
projections imagePoints and the projected (using REF: projectPoints ) objectPoints. The use of RANSAC
|
|
makes the function resistant to outliers.
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePNPRansac for object detection can be found at
|
|
opencv_source_code/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/
|
|
</li>
|
|
<li>
|
|
The default method used to estimate the camera pose for the Minimal Sample Sets step
|
|
is #SOLVEPNP_EPNP. Exceptions are:
|
|
<ul>
|
|
<li>
|
|
if you choose #SOLVEPNP_P3P or #SOLVEPNP_AP3P, these methods will be used.
|
|
</li>
|
|
<li>
|
|
if the number of input points is equal to 4, #SOLVEPNP_P3P is used.
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The method used to estimate the camera pose using all the inliers is defined by the
|
|
flags parameters unless it is equal to #SOLVEPNP_P3P or #SOLVEPNP_AP3P. In this case,
|
|
the method #SOLVEPNP_EPNP will be used instead.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRansac</h4>
|
|
<pre>public static boolean solvePnPRansac(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for REF: SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>iterationsCount</code> - Number of iterations.
|
|
is the maximum allowed distance between the observed and computed point projections to consider it
|
|
an inlier.
|
|
|
|
The function estimates an object pose given a set of object points, their corresponding image
|
|
projections, as well as the camera intrinsic matrix and the distortion coefficients. This function finds such
|
|
a pose that minimizes reprojection error, that is, the sum of squared distances between the observed
|
|
projections imagePoints and the projected (using REF: projectPoints ) objectPoints. The use of RANSAC
|
|
makes the function resistant to outliers.
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePNPRansac for object detection can be found at
|
|
opencv_source_code/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/
|
|
</li>
|
|
<li>
|
|
The default method used to estimate the camera pose for the Minimal Sample Sets step
|
|
is #SOLVEPNP_EPNP. Exceptions are:
|
|
<ul>
|
|
<li>
|
|
if you choose #SOLVEPNP_P3P or #SOLVEPNP_AP3P, these methods will be used.
|
|
</li>
|
|
<li>
|
|
if the number of input points is equal to 4, #SOLVEPNP_P3P is used.
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The method used to estimate the camera pose using all the inliers is defined by the
|
|
flags parameters unless it is equal to #SOLVEPNP_P3P or #SOLVEPNP_AP3P. In this case,
|
|
the method #SOLVEPNP_EPNP will be used instead.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-float-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRansac</h4>
|
|
<pre>public static boolean solvePnPRansac(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount,
|
|
float reprojectionError)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for REF: SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>iterationsCount</code> - Number of iterations.</dd>
|
|
<dd><code>reprojectionError</code> - Inlier threshold value used by the RANSAC procedure. The parameter value
|
|
is the maximum allowed distance between the observed and computed point projections to consider it
|
|
an inlier.
|
|
|
|
The function estimates an object pose given a set of object points, their corresponding image
|
|
projections, as well as the camera intrinsic matrix and the distortion coefficients. This function finds such
|
|
a pose that minimizes reprojection error, that is, the sum of squared distances between the observed
|
|
projections imagePoints and the projected (using REF: projectPoints ) objectPoints. The use of RANSAC
|
|
makes the function resistant to outliers.
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePNPRansac for object detection can be found at
|
|
opencv_source_code/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/
|
|
</li>
|
|
<li>
|
|
The default method used to estimate the camera pose for the Minimal Sample Sets step
|
|
is #SOLVEPNP_EPNP. Exceptions are:
|
|
<ul>
|
|
<li>
|
|
if you choose #SOLVEPNP_P3P or #SOLVEPNP_AP3P, these methods will be used.
|
|
</li>
|
|
<li>
|
|
if the number of input points is equal to 4, #SOLVEPNP_P3P is used.
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The method used to estimate the camera pose using all the inliers is defined by the
|
|
flags parameters unless it is equal to #SOLVEPNP_P3P or #SOLVEPNP_AP3P. In this case,
|
|
the method #SOLVEPNP_EPNP will be used instead.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-float-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRansac</h4>
|
|
<pre>public static boolean solvePnPRansac(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount,
|
|
float reprojectionError,
|
|
double confidence)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for REF: SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>iterationsCount</code> - Number of iterations.</dd>
|
|
<dd><code>reprojectionError</code> - Inlier threshold value used by the RANSAC procedure. The parameter value
|
|
is the maximum allowed distance between the observed and computed point projections to consider it
|
|
an inlier.</dd>
|
|
<dd><code>confidence</code> - The probability that the algorithm produces a useful result.
|
|
|
|
The function estimates an object pose given a set of object points, their corresponding image
|
|
projections, as well as the camera intrinsic matrix and the distortion coefficients. This function finds such
|
|
a pose that minimizes reprojection error, that is, the sum of squared distances between the observed
|
|
projections imagePoints and the projected (using REF: projectPoints ) objectPoints. The use of RANSAC
|
|
makes the function resistant to outliers.
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePNPRansac for object detection can be found at
|
|
opencv_source_code/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/
|
|
</li>
|
|
<li>
|
|
The default method used to estimate the camera pose for the Minimal Sample Sets step
|
|
is #SOLVEPNP_EPNP. Exceptions are:
|
|
<ul>
|
|
<li>
|
|
if you choose #SOLVEPNP_P3P or #SOLVEPNP_AP3P, these methods will be used.
|
|
</li>
|
|
<li>
|
|
if the number of input points is equal to 4, #SOLVEPNP_P3P is used.
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The method used to estimate the camera pose using all the inliers is defined by the
|
|
flags parameters unless it is equal to #SOLVEPNP_P3P or #SOLVEPNP_AP3P. In this case,
|
|
the method #SOLVEPNP_EPNP will be used instead.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-float-double-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRansac</h4>
|
|
<pre>public static boolean solvePnPRansac(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount,
|
|
float reprojectionError,
|
|
double confidence,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for REF: SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>iterationsCount</code> - Number of iterations.</dd>
|
|
<dd><code>reprojectionError</code> - Inlier threshold value used by the RANSAC procedure. The parameter value
|
|
is the maximum allowed distance between the observed and computed point projections to consider it
|
|
an inlier.</dd>
|
|
<dd><code>confidence</code> - The probability that the algorithm produces a useful result.</dd>
|
|
<dd><code>inliers</code> - Output vector that contains indices of inliers in objectPoints and imagePoints .
|
|
|
|
The function estimates an object pose given a set of object points, their corresponding image
|
|
projections, as well as the camera intrinsic matrix and the distortion coefficients. This function finds such
|
|
a pose that minimizes reprojection error, that is, the sum of squared distances between the observed
|
|
projections imagePoints and the projected (using REF: projectPoints ) objectPoints. The use of RANSAC
|
|
makes the function resistant to outliers.
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePNPRansac for object detection can be found at
|
|
opencv_source_code/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/
|
|
</li>
|
|
<li>
|
|
The default method used to estimate the camera pose for the Minimal Sample Sets step
|
|
is #SOLVEPNP_EPNP. Exceptions are:
|
|
<ul>
|
|
<li>
|
|
if you choose #SOLVEPNP_P3P or #SOLVEPNP_AP3P, these methods will be used.
|
|
</li>
|
|
<li>
|
|
if the number of input points is equal to 4, #SOLVEPNP_P3P is used.
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The method used to estimate the camera pose using all the inliers is defined by the
|
|
flags parameters unless it is equal to #SOLVEPNP_P3P or #SOLVEPNP_AP3P. In this case,
|
|
the method #SOLVEPNP_EPNP will be used instead.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-boolean-int-float-double-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRansac</h4>
|
|
<pre>public static boolean solvePnPRansac(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
boolean useExtrinsicGuess,
|
|
int iterationsCount,
|
|
float reprojectionError,
|
|
double confidence,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
int flags)</pre>
|
|
<div class="block">Finds an object pose from 3D-2D point correspondences using the RANSAC scheme.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or
|
|
1xN/Nx1 3-channel, where N is the number of points. vector<Point3d> can be also passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can be also passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system.</dd>
|
|
<dd><code>tvec</code> - Output translation vector.</dd>
|
|
<dd><code>useExtrinsicGuess</code> - Parameter used for REF: SOLVEPNP_ITERATIVE. If true (1), the function uses
|
|
the provided rvec and tvec values as initial approximations of the rotation and translation
|
|
vectors, respectively, and further optimizes them.</dd>
|
|
<dd><code>iterationsCount</code> - Number of iterations.</dd>
|
|
<dd><code>reprojectionError</code> - Inlier threshold value used by the RANSAC procedure. The parameter value
|
|
is the maximum allowed distance between the observed and computed point projections to consider it
|
|
an inlier.</dd>
|
|
<dd><code>confidence</code> - The probability that the algorithm produces a useful result.</dd>
|
|
<dd><code>inliers</code> - Output vector that contains indices of inliers in objectPoints and imagePoints .</dd>
|
|
<dd><code>flags</code> - Method for solving a PnP problem (see REF: solvePnP ).
|
|
|
|
The function estimates an object pose given a set of object points, their corresponding image
|
|
projections, as well as the camera intrinsic matrix and the distortion coefficients. This function finds such
|
|
a pose that minimizes reprojection error, that is, the sum of squared distances between the observed
|
|
projections imagePoints and the projected (using REF: projectPoints ) objectPoints. The use of RANSAC
|
|
makes the function resistant to outliers.
|
|
|
|
<b>Note:</b>
|
|
<ul>
|
|
<li>
|
|
An example of how to use solvePNPRansac for object detection can be found at
|
|
opencv_source_code/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/
|
|
</li>
|
|
<li>
|
|
The default method used to estimate the camera pose for the Minimal Sample Sets step
|
|
is #SOLVEPNP_EPNP. Exceptions are:
|
|
<ul>
|
|
<li>
|
|
if you choose #SOLVEPNP_P3P or #SOLVEPNP_AP3P, these methods will be used.
|
|
</li>
|
|
<li>
|
|
if the number of input points is equal to 4, #SOLVEPNP_P3P is used.
|
|
</li>
|
|
</ul>
|
|
<li>
|
|
The method used to estimate the camera pose using all the inliers is defined by the
|
|
flags parameters unless it is equal to #SOLVEPNP_P3P or #SOLVEPNP_AP3P. In this case,
|
|
the method #SOLVEPNP_EPNP will be used instead.
|
|
</li>
|
|
</ul></dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRansac</h4>
|
|
<pre>public static boolean solvePnPRansac(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRansac-org.opencv.core.MatOfPoint3f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.MatOfDouble-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.calib3d.UsacParams-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRansac</h4>
|
|
<pre>public static boolean solvePnPRansac(<a href="../../../org/opencv/core/MatOfPoint3f.html" title="class in org.opencv.core">MatOfPoint3f</a> objectPoints,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/MatOfDouble.html" title="class in org.opencv.core">MatOfDouble</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> inliers,
|
|
<a href="../../../org/opencv/calib3d/UsacParams.html" title="class in org.opencv.calib3d">UsacParams</a> params)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRefineLM-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRefineLM</h4>
|
|
<pre>public static void solvePnPRefineLM(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</pre>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or 1xN/Nx1 3-channel,
|
|
where N is the number of points. vector<Point3d> can also be passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can also be passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Input/Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system. Input values are used as an initial solution.</dd>
|
|
<dd><code>tvec</code> - Input/Output translation vector. Input values are used as an initial solution.
|
|
|
|
The function refines the object pose given at least 3 object points, their corresponding image
|
|
projections, an initial solution for the rotation and translation vector,
|
|
as well as the camera intrinsic matrix and the distortion coefficients.
|
|
The function minimizes the projection error with respect to the rotation and the translation vectors, according
|
|
to a Levenberg-Marquardt iterative minimization CITE: Madsen04 CITE: Eade13 process.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRefineLM-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRefineLM</h4>
|
|
<pre>public static void solvePnPRefineLM(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or 1xN/Nx1 3-channel,
|
|
where N is the number of points. vector<Point3d> can also be passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can also be passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Input/Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system. Input values are used as an initial solution.</dd>
|
|
<dd><code>tvec</code> - Input/Output translation vector. Input values are used as an initial solution.</dd>
|
|
<dd><code>criteria</code> - Criteria when to stop the Levenberg-Marquard iterative algorithm.
|
|
|
|
The function refines the object pose given at least 3 object points, their corresponding image
|
|
projections, an initial solution for the rotation and translation vector,
|
|
as well as the camera intrinsic matrix and the distortion coefficients.
|
|
The function minimizes the projection error with respect to the rotation and the translation vectors, according
|
|
to a Levenberg-Marquardt iterative minimization CITE: Madsen04 CITE: Eade13 process.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRefineVVS-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRefineVVS</h4>
|
|
<pre>public static void solvePnPRefineVVS(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec)</pre>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or 1xN/Nx1 3-channel,
|
|
where N is the number of points. vector<Point3d> can also be passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can also be passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Input/Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system. Input values are used as an initial solution.</dd>
|
|
<dd><code>tvec</code> - Input/Output translation vector. Input values are used as an initial solution.
|
|
gain in the Damped Gauss-Newton formulation.
|
|
|
|
The function refines the object pose given at least 3 object points, their corresponding image
|
|
projections, an initial solution for the rotation and translation vector,
|
|
as well as the camera intrinsic matrix and the distortion coefficients.
|
|
The function minimizes the projection error with respect to the rotation and the translation vectors, using a
|
|
virtual visual servoing (VVS) CITE: Chaumette06 CITE: Marchand16 scheme.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRefineVVS-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRefineVVS</h4>
|
|
<pre>public static void solvePnPRefineVVS(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or 1xN/Nx1 3-channel,
|
|
where N is the number of points. vector<Point3d> can also be passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can also be passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Input/Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system. Input values are used as an initial solution.</dd>
|
|
<dd><code>tvec</code> - Input/Output translation vector. Input values are used as an initial solution.</dd>
|
|
<dd><code>criteria</code> - Criteria when to stop the Levenberg-Marquard iterative algorithm.
|
|
gain in the Damped Gauss-Newton formulation.
|
|
|
|
The function refines the object pose given at least 3 object points, their corresponding image
|
|
projections, an initial solution for the rotation and translation vector,
|
|
as well as the camera intrinsic matrix and the distortion coefficients.
|
|
The function minimizes the projection error with respect to the rotation and the translation vectors, using a
|
|
virtual visual servoing (VVS) CITE: Chaumette06 CITE: Marchand16 scheme.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="solvePnPRefineVVS-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.TermCriteria-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>solvePnPRefineVVS</h4>
|
|
<pre>public static void solvePnPRefineVVS(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> objectPoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> imagePoints,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> rvec,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> tvec,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria,
|
|
double VVSlambda)</pre>
|
|
<div class="block">Refine a pose (the translation and the rotation that transform a 3D point expressed in the object coordinate frame
|
|
to the camera coordinate frame) from a 3D-2D point correspondences and starting from an initial solution.
|
|
|
|
SEE: REF: calib3d_solvePnP</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Array of object points in the object coordinate space, Nx3 1-channel or 1xN/Nx1 3-channel,
|
|
where N is the number of points. vector<Point3d> can also be passed here.</dd>
|
|
<dd><code>imagePoints</code> - Array of corresponding image points, Nx2 1-channel or 1xN/Nx1 2-channel,
|
|
where N is the number of points. vector<Point2d> can also be passed here.</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera intrinsic matrix \(\cameramatrix{A}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\(\distcoeffs\). If the vector is NULL/empty, the zero distortion coefficients are
|
|
assumed.</dd>
|
|
<dd><code>rvec</code> - Input/Output rotation vector (see REF: Rodrigues ) that, together with tvec, brings points from
|
|
the model coordinate system to the camera coordinate system. Input values are used as an initial solution.</dd>
|
|
<dd><code>tvec</code> - Input/Output translation vector. Input values are used as an initial solution.</dd>
|
|
<dd><code>criteria</code> - Criteria when to stop the Levenberg-Marquard iterative algorithm.</dd>
|
|
<dd><code>VVSlambda</code> - Gain for the virtual visual servoing control law, equivalent to the \(\alpha\)
|
|
gain in the Damped Gauss-Newton formulation.
|
|
|
|
The function refines the object pose given at least 3 object points, their corresponding image
|
|
projections, an initial solution for the rotation and translation vector,
|
|
as well as the camera intrinsic matrix and the distortion coefficients.
|
|
The function minimizes the projection error with respect to the rotation and the translation vectors, using a
|
|
virtual visual servoing (VVS) CITE: Chaumette06 CITE: Marchand16 scheme.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoCalibrate</h4>
|
|
<pre>public static double stereoCalibrate(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoCalibrate</h4>
|
|
<pre>public static double stereoCalibrate(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
int flags)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoCalibrate-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoCalibrate</h4>
|
|
<pre>public static double stereoCalibrate(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoCalibrateExtended-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoCalibrateExtended</h4>
|
|
<pre>public static double stereoCalibrateExtended(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors)</pre>
|
|
<div class="block">Calibrates a stereo camera set up. This function finds the intrinsic parameters
|
|
for each of the two cameras and the extrinsic parameters between the two cameras.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of the calibration pattern points. The same structure as
|
|
in REF: calibrateCamera. For each pattern view, both cameras need to see the same object
|
|
points. Therefore, objectPoints.size(), imagePoints1.size(), and imagePoints2.size() need to be
|
|
equal as well as objectPoints[i].size(), imagePoints1[i].size(), and imagePoints2[i].size() need to
|
|
be equal for each i.</dd>
|
|
<dd><code>imagePoints1</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the first camera. The same structure as in REF: calibrateCamera.</dd>
|
|
<dd><code>imagePoints2</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the second camera. The same structure as in REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix1</code> - Input/output camera intrinsic matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs1</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix2</code> - Input/output second camera intrinsic matrix for the second camera. See description for
|
|
cameraMatrix1.</dd>
|
|
<dd><code>distCoeffs2</code> - Input/output lens distortion coefficients for the second camera. See
|
|
description for distCoeffs1.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize the camera intrinsic matrices.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector T, this matrix brings
|
|
points given in the first camera's coordinate system to points in the second camera's
|
|
coordinate system. In more technical terms, the tuple of R and T performs a change of basis
|
|
from the first camera's coordinate system to the second camera's coordinate system. Due to its
|
|
duality, this tuple is equivalent to the position of the first camera with respect to the
|
|
second camera coordinate system.</dd>
|
|
<dd><code>T</code> - Output translation vector, see description above.</dd>
|
|
<dd><code>E</code> - Output essential matrix.</dd>
|
|
<dd><code>F</code> - Output fundamental matrix.</dd>
|
|
<dd><code>perViewErrors</code> - Output vector of the RMS re-projection error estimated for each pattern view.
|
|
<ul>
|
|
<li>
|
|
REF: CALIB_FIX_INTRINSIC Fix cameraMatrix? and distCoeffs? so that only R, T, E, and F
|
|
matrices are estimated.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_USE_INTRINSIC_GUESS Optimize some or all of the intrinsic parameters
|
|
according to the specified flags. Initial values are provided by the user.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_USE_EXTRINSIC_GUESS R and T contain valid initial values that are optimized further.
|
|
Otherwise R and T are initialized to the median value of the pattern views (each dimension separately).
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_PRINCIPAL_POINT Fix the principal points during the optimization.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_FOCAL_LENGTH Fix \(f^{(j)}_x\) and \(f^{(j)}_y\) .
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_ASPECT_RATIO Optimize \(f^{(j)}_y\) . Fix the ratio \(f^{(j)}_x/f^{(j)}_y\)
|
|
.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_SAME_FOCAL_LENGTH Enforce \(f^{(0)}_x=f^{(1)}_x\) and \(f^{(0)}_y=f^{(1)}_y\) .
|
|
</li>
|
|
<li>
|
|
REF: CALIB_ZERO_TANGENT_DIST Set tangential distortion coefficients for each camera to
|
|
zeros and fix there.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_K1,..., REF: CALIB_FIX_K6 Do not change the corresponding radial
|
|
distortion coefficient during the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set,
|
|
the coefficient from the supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_RATIONAL_MODEL Enable coefficients k4, k5, and k6. To provide the backward
|
|
compatibility, this extra flag should be explicitly specified to make the calibration
|
|
function use the rational model and return 8 coefficients. If the flag is not set, the
|
|
function computes and returns only 5 distortion coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_THIN_PRISM_MODEL Coefficients s1, s2, s3 and s4 are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the thin prism model and return 12 coefficients. If the flag is not
|
|
set, the function computes and returns only 5 distortion coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_S1_S2_S3_S4 The thin prism distortion coefficients are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_TILTED_MODEL Coefficients tauX and tauY are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the tilted sensor model and return 14 coefficients. If the flag is not
|
|
set, the function computes and returns only 5 distortion coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_TAUX_TAUY The coefficients of the tilted sensor model are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
</ul>
|
|
|
|
The function estimates the transformation between two cameras making a stereo pair. If one computes
|
|
the poses of an object relative to the first camera and to the second camera,
|
|
( \(R_1\),\(T_1\) ) and (\(R_2\),\(T_2\)), respectively, for a stereo camera where the
|
|
relative position and orientation between the two cameras are fixed, then those poses definitely
|
|
relate to each other. This means, if the relative position and orientation (\(R\),\(T\)) of the
|
|
two cameras is known, it is possible to compute (\(R_2\),\(T_2\)) when (\(R_1\),\(T_1\)) is
|
|
given. This is what the described function does. It computes (\(R\),\(T\)) such that:
|
|
|
|
\(R_2=R R_1\)
|
|
\(T_2=R T_1 + T.\)
|
|
|
|
Therefore, one can compute the coordinate representation of a 3D point for the second camera's
|
|
coordinate system when given the point's coordinate representation in the first camera's coordinate
|
|
system:
|
|
|
|
\(\begin{bmatrix}
|
|
X_2 \\
|
|
Y_2 \\
|
|
Z_2 \\
|
|
1
|
|
\end{bmatrix} = \begin{bmatrix}
|
|
R & T \\
|
|
0 & 1
|
|
\end{bmatrix} \begin{bmatrix}
|
|
X_1 \\
|
|
Y_1 \\
|
|
Z_1 \\
|
|
1
|
|
\end{bmatrix}.\)
|
|
|
|
|
|
Optionally, it computes the essential matrix E:
|
|
|
|
\(E= \vecthreethree{0}{-T_2}{T_1}{T_2}{0}{-T_0}{-T_1}{T_0}{0} R\)
|
|
|
|
where \(T_i\) are components of the translation vector \(T\) : \(T=[T_0, T_1, T_2]^T\) .
|
|
And the function can also compute the fundamental matrix F:
|
|
|
|
\(F = cameraMatrix2^{-T}\cdot E \cdot cameraMatrix1^{-1}\)
|
|
|
|
Besides the stereo-related information, the function can also perform a full calibration of each of
|
|
the two cameras. However, due to the high dimensionality of the parameter space and noise in the
|
|
input data, the function can diverge from the correct solution. If the intrinsic parameters can be
|
|
estimated with high accuracy for each of the cameras individually (for example, using
|
|
#calibrateCamera ), you are recommended to do so and then pass REF: CALIB_FIX_INTRINSIC flag to the
|
|
function along with the computed intrinsic parameters. Otherwise, if all the parameters are
|
|
estimated at once, it makes sense to restrict some parameters, for example, pass
|
|
REF: CALIB_SAME_FOCAL_LENGTH and REF: CALIB_ZERO_TANGENT_DIST flags, which is usually a
|
|
reasonable assumption.
|
|
|
|
Similarly to #calibrateCamera, the function minimizes the total re-projection error for all the
|
|
points in all the available views from both cameras. The function returns the final value of the
|
|
re-projection error.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoCalibrateExtended-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoCalibrateExtended</h4>
|
|
<pre>public static double stereoCalibrateExtended(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags)</pre>
|
|
<div class="block">Calibrates a stereo camera set up. This function finds the intrinsic parameters
|
|
for each of the two cameras and the extrinsic parameters between the two cameras.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of the calibration pattern points. The same structure as
|
|
in REF: calibrateCamera. For each pattern view, both cameras need to see the same object
|
|
points. Therefore, objectPoints.size(), imagePoints1.size(), and imagePoints2.size() need to be
|
|
equal as well as objectPoints[i].size(), imagePoints1[i].size(), and imagePoints2[i].size() need to
|
|
be equal for each i.</dd>
|
|
<dd><code>imagePoints1</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the first camera. The same structure as in REF: calibrateCamera.</dd>
|
|
<dd><code>imagePoints2</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the second camera. The same structure as in REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix1</code> - Input/output camera intrinsic matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs1</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix2</code> - Input/output second camera intrinsic matrix for the second camera. See description for
|
|
cameraMatrix1.</dd>
|
|
<dd><code>distCoeffs2</code> - Input/output lens distortion coefficients for the second camera. See
|
|
description for distCoeffs1.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize the camera intrinsic matrices.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector T, this matrix brings
|
|
points given in the first camera's coordinate system to points in the second camera's
|
|
coordinate system. In more technical terms, the tuple of R and T performs a change of basis
|
|
from the first camera's coordinate system to the second camera's coordinate system. Due to its
|
|
duality, this tuple is equivalent to the position of the first camera with respect to the
|
|
second camera coordinate system.</dd>
|
|
<dd><code>T</code> - Output translation vector, see description above.</dd>
|
|
<dd><code>E</code> - Output essential matrix.</dd>
|
|
<dd><code>F</code> - Output fundamental matrix.</dd>
|
|
<dd><code>perViewErrors</code> - Output vector of the RMS re-projection error estimated for each pattern view.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: CALIB_FIX_INTRINSIC Fix cameraMatrix? and distCoeffs? so that only R, T, E, and F
|
|
matrices are estimated.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_USE_INTRINSIC_GUESS Optimize some or all of the intrinsic parameters
|
|
according to the specified flags. Initial values are provided by the user.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_USE_EXTRINSIC_GUESS R and T contain valid initial values that are optimized further.
|
|
Otherwise R and T are initialized to the median value of the pattern views (each dimension separately).
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_PRINCIPAL_POINT Fix the principal points during the optimization.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_FOCAL_LENGTH Fix \(f^{(j)}_x\) and \(f^{(j)}_y\) .
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_ASPECT_RATIO Optimize \(f^{(j)}_y\) . Fix the ratio \(f^{(j)}_x/f^{(j)}_y\)
|
|
.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_SAME_FOCAL_LENGTH Enforce \(f^{(0)}_x=f^{(1)}_x\) and \(f^{(0)}_y=f^{(1)}_y\) .
|
|
</li>
|
|
<li>
|
|
REF: CALIB_ZERO_TANGENT_DIST Set tangential distortion coefficients for each camera to
|
|
zeros and fix there.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_K1,..., REF: CALIB_FIX_K6 Do not change the corresponding radial
|
|
distortion coefficient during the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set,
|
|
the coefficient from the supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_RATIONAL_MODEL Enable coefficients k4, k5, and k6. To provide the backward
|
|
compatibility, this extra flag should be explicitly specified to make the calibration
|
|
function use the rational model and return 8 coefficients. If the flag is not set, the
|
|
function computes and returns only 5 distortion coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_THIN_PRISM_MODEL Coefficients s1, s2, s3 and s4 are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the thin prism model and return 12 coefficients. If the flag is not
|
|
set, the function computes and returns only 5 distortion coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_S1_S2_S3_S4 The thin prism distortion coefficients are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_TILTED_MODEL Coefficients tauX and tauY are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the tilted sensor model and return 14 coefficients. If the flag is not
|
|
set, the function computes and returns only 5 distortion coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_TAUX_TAUY The coefficients of the tilted sensor model are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
</ul>
|
|
|
|
The function estimates the transformation between two cameras making a stereo pair. If one computes
|
|
the poses of an object relative to the first camera and to the second camera,
|
|
( \(R_1\),\(T_1\) ) and (\(R_2\),\(T_2\)), respectively, for a stereo camera where the
|
|
relative position and orientation between the two cameras are fixed, then those poses definitely
|
|
relate to each other. This means, if the relative position and orientation (\(R\),\(T\)) of the
|
|
two cameras is known, it is possible to compute (\(R_2\),\(T_2\)) when (\(R_1\),\(T_1\)) is
|
|
given. This is what the described function does. It computes (\(R\),\(T\)) such that:
|
|
|
|
\(R_2=R R_1\)
|
|
\(T_2=R T_1 + T.\)
|
|
|
|
Therefore, one can compute the coordinate representation of a 3D point for the second camera's
|
|
coordinate system when given the point's coordinate representation in the first camera's coordinate
|
|
system:
|
|
|
|
\(\begin{bmatrix}
|
|
X_2 \\
|
|
Y_2 \\
|
|
Z_2 \\
|
|
1
|
|
\end{bmatrix} = \begin{bmatrix}
|
|
R & T \\
|
|
0 & 1
|
|
\end{bmatrix} \begin{bmatrix}
|
|
X_1 \\
|
|
Y_1 \\
|
|
Z_1 \\
|
|
1
|
|
\end{bmatrix}.\)
|
|
|
|
|
|
Optionally, it computes the essential matrix E:
|
|
|
|
\(E= \vecthreethree{0}{-T_2}{T_1}{T_2}{0}{-T_0}{-T_1}{T_0}{0} R\)
|
|
|
|
where \(T_i\) are components of the translation vector \(T\) : \(T=[T_0, T_1, T_2]^T\) .
|
|
And the function can also compute the fundamental matrix F:
|
|
|
|
\(F = cameraMatrix2^{-T}\cdot E \cdot cameraMatrix1^{-1}\)
|
|
|
|
Besides the stereo-related information, the function can also perform a full calibration of each of
|
|
the two cameras. However, due to the high dimensionality of the parameter space and noise in the
|
|
input data, the function can diverge from the correct solution. If the intrinsic parameters can be
|
|
estimated with high accuracy for each of the cameras individually (for example, using
|
|
#calibrateCamera ), you are recommended to do so and then pass REF: CALIB_FIX_INTRINSIC flag to the
|
|
function along with the computed intrinsic parameters. Otherwise, if all the parameters are
|
|
estimated at once, it makes sense to restrict some parameters, for example, pass
|
|
REF: CALIB_SAME_FOCAL_LENGTH and REF: CALIB_ZERO_TANGENT_DIST flags, which is usually a
|
|
reasonable assumption.
|
|
|
|
Similarly to #calibrateCamera, the function minimizes the total re-projection error for all the
|
|
points in all the available views from both cameras. The function returns the final value of the
|
|
re-projection error.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoCalibrateExtended-java.util.List-java.util.List-java.util.List-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoCalibrateExtended</h4>
|
|
<pre>public static double stereoCalibrateExtended(java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> objectPoints,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints1,
|
|
java.util.List<<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a>> imagePoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> E,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> perViewErrors,
|
|
int flags,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
<div class="block">Calibrates a stereo camera set up. This function finds the intrinsic parameters
|
|
for each of the two cameras and the extrinsic parameters between the two cameras.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>objectPoints</code> - Vector of vectors of the calibration pattern points. The same structure as
|
|
in REF: calibrateCamera. For each pattern view, both cameras need to see the same object
|
|
points. Therefore, objectPoints.size(), imagePoints1.size(), and imagePoints2.size() need to be
|
|
equal as well as objectPoints[i].size(), imagePoints1[i].size(), and imagePoints2[i].size() need to
|
|
be equal for each i.</dd>
|
|
<dd><code>imagePoints1</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the first camera. The same structure as in REF: calibrateCamera.</dd>
|
|
<dd><code>imagePoints2</code> - Vector of vectors of the projections of the calibration pattern points,
|
|
observed by the second camera. The same structure as in REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix1</code> - Input/output camera intrinsic matrix for the first camera, the same as in
|
|
REF: calibrateCamera. Furthermore, for the stereo case, additional flags may be used, see below.</dd>
|
|
<dd><code>distCoeffs1</code> - Input/output vector of distortion coefficients, the same as in
|
|
REF: calibrateCamera.</dd>
|
|
<dd><code>cameraMatrix2</code> - Input/output second camera intrinsic matrix for the second camera. See description for
|
|
cameraMatrix1.</dd>
|
|
<dd><code>distCoeffs2</code> - Input/output lens distortion coefficients for the second camera. See
|
|
description for distCoeffs1.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used only to initialize the camera intrinsic matrices.</dd>
|
|
<dd><code>R</code> - Output rotation matrix. Together with the translation vector T, this matrix brings
|
|
points given in the first camera's coordinate system to points in the second camera's
|
|
coordinate system. In more technical terms, the tuple of R and T performs a change of basis
|
|
from the first camera's coordinate system to the second camera's coordinate system. Due to its
|
|
duality, this tuple is equivalent to the position of the first camera with respect to the
|
|
second camera coordinate system.</dd>
|
|
<dd><code>T</code> - Output translation vector, see description above.</dd>
|
|
<dd><code>E</code> - Output essential matrix.</dd>
|
|
<dd><code>F</code> - Output fundamental matrix.</dd>
|
|
<dd><code>perViewErrors</code> - Output vector of the RMS re-projection error estimated for each pattern view.</dd>
|
|
<dd><code>flags</code> - Different flags that may be zero or a combination of the following values:
|
|
<ul>
|
|
<li>
|
|
REF: CALIB_FIX_INTRINSIC Fix cameraMatrix? and distCoeffs? so that only R, T, E, and F
|
|
matrices are estimated.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_USE_INTRINSIC_GUESS Optimize some or all of the intrinsic parameters
|
|
according to the specified flags. Initial values are provided by the user.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_USE_EXTRINSIC_GUESS R and T contain valid initial values that are optimized further.
|
|
Otherwise R and T are initialized to the median value of the pattern views (each dimension separately).
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_PRINCIPAL_POINT Fix the principal points during the optimization.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_FOCAL_LENGTH Fix \(f^{(j)}_x\) and \(f^{(j)}_y\) .
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_ASPECT_RATIO Optimize \(f^{(j)}_y\) . Fix the ratio \(f^{(j)}_x/f^{(j)}_y\)
|
|
.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_SAME_FOCAL_LENGTH Enforce \(f^{(0)}_x=f^{(1)}_x\) and \(f^{(0)}_y=f^{(1)}_y\) .
|
|
</li>
|
|
<li>
|
|
REF: CALIB_ZERO_TANGENT_DIST Set tangential distortion coefficients for each camera to
|
|
zeros and fix there.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_K1,..., REF: CALIB_FIX_K6 Do not change the corresponding radial
|
|
distortion coefficient during the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set,
|
|
the coefficient from the supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_RATIONAL_MODEL Enable coefficients k4, k5, and k6. To provide the backward
|
|
compatibility, this extra flag should be explicitly specified to make the calibration
|
|
function use the rational model and return 8 coefficients. If the flag is not set, the
|
|
function computes and returns only 5 distortion coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_THIN_PRISM_MODEL Coefficients s1, s2, s3 and s4 are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the thin prism model and return 12 coefficients. If the flag is not
|
|
set, the function computes and returns only 5 distortion coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_S1_S2_S3_S4 The thin prism distortion coefficients are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_TILTED_MODEL Coefficients tauX and tauY are enabled. To provide the
|
|
backward compatibility, this extra flag should be explicitly specified to make the
|
|
calibration function use the tilted sensor model and return 14 coefficients. If the flag is not
|
|
set, the function computes and returns only 5 distortion coefficients.
|
|
</li>
|
|
<li>
|
|
REF: CALIB_FIX_TAUX_TAUY The coefficients of the tilted sensor model are not changed during
|
|
the optimization. If REF: CALIB_USE_INTRINSIC_GUESS is set, the coefficient from the
|
|
supplied distCoeffs matrix is used. Otherwise, it is set to 0.</dd>
|
|
<dd><code>criteria</code> - Termination criteria for the iterative optimization algorithm.
|
|
</li>
|
|
</ul>
|
|
|
|
The function estimates the transformation between two cameras making a stereo pair. If one computes
|
|
the poses of an object relative to the first camera and to the second camera,
|
|
( \(R_1\),\(T_1\) ) and (\(R_2\),\(T_2\)), respectively, for a stereo camera where the
|
|
relative position and orientation between the two cameras are fixed, then those poses definitely
|
|
relate to each other. This means, if the relative position and orientation (\(R\),\(T\)) of the
|
|
two cameras is known, it is possible to compute (\(R_2\),\(T_2\)) when (\(R_1\),\(T_1\)) is
|
|
given. This is what the described function does. It computes (\(R\),\(T\)) such that:
|
|
|
|
\(R_2=R R_1\)
|
|
\(T_2=R T_1 + T.\)
|
|
|
|
Therefore, one can compute the coordinate representation of a 3D point for the second camera's
|
|
coordinate system when given the point's coordinate representation in the first camera's coordinate
|
|
system:
|
|
|
|
\(\begin{bmatrix}
|
|
X_2 \\
|
|
Y_2 \\
|
|
Z_2 \\
|
|
1
|
|
\end{bmatrix} = \begin{bmatrix}
|
|
R & T \\
|
|
0 & 1
|
|
\end{bmatrix} \begin{bmatrix}
|
|
X_1 \\
|
|
Y_1 \\
|
|
Z_1 \\
|
|
1
|
|
\end{bmatrix}.\)
|
|
|
|
|
|
Optionally, it computes the essential matrix E:
|
|
|
|
\(E= \vecthreethree{0}{-T_2}{T_1}{T_2}{0}{-T_0}{-T_1}{T_0}{0} R\)
|
|
|
|
where \(T_i\) are components of the translation vector \(T\) : \(T=[T_0, T_1, T_2]^T\) .
|
|
And the function can also compute the fundamental matrix F:
|
|
|
|
\(F = cameraMatrix2^{-T}\cdot E \cdot cameraMatrix1^{-1}\)
|
|
|
|
Besides the stereo-related information, the function can also perform a full calibration of each of
|
|
the two cameras. However, due to the high dimensionality of the parameter space and noise in the
|
|
input data, the function can diverge from the correct solution. If the intrinsic parameters can be
|
|
estimated with high accuracy for each of the cameras individually (for example, using
|
|
#calibrateCamera ), you are recommended to do so and then pass REF: CALIB_FIX_INTRINSIC flag to the
|
|
function along with the computed intrinsic parameters. Otherwise, if all the parameters are
|
|
estimated at once, it makes sense to restrict some parameters, for example, pass
|
|
REF: CALIB_SAME_FOCAL_LENGTH and REF: CALIB_ZERO_TANGENT_DIST flags, which is usually a
|
|
reasonable assumption.
|
|
|
|
Similarly to #calibrateCamera, the function minimizes the total re-projection error for all the
|
|
points in all the available views from both cameras. The function returns the final value of the
|
|
re-projection error.</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoRectify</h4>
|
|
<pre>public static void stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q)</pre>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>cameraMatrix2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>T</code> - Translation vector from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera. This matrix
|
|
brings points given in the unrectified first camera's coordinate system to points in the rectified
|
|
first camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified first camera's coordinate system to the rectified first camera's coordinate system.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera. This matrix
|
|
brings points given in the unrectified second camera's coordinate system to points in the rectified
|
|
second camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified second camera's coordinate system to the rectified second camera's coordinate system.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified first camera's image.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified second camera's image.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see REF: reprojectImageTo3D).
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.
|
|
scaling. Otherwise, the parameter should be between 0 and 1. alpha=0 means that the rectified
|
|
images are zoomed and shifted so that only valid pixels are visible (no black areas after
|
|
rectification). alpha=1 means that the rectified image is decimated and shifted so that all the
|
|
pixels from the original images from the cameras are retained in the rectified images (no source
|
|
image pixels are lost). Any intermediate value yields an intermediate result between
|
|
those two extreme cases.
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to a larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
|
|
The function computes the rotation matrices for each camera that (virtually) make both camera image
|
|
planes the same plane. Consequently, this makes all the epipolar lines parallel and thus simplifies
|
|
the dense stereo correspondence problem. The function takes the matrices computed by #stereoCalibrate
|
|
as input. As output, it provides two rotation matrices and also two projection matrices in the new
|
|
coordinates. The function distinguishes the following two cases:
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Horizontal stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly along the x-axis (with possible small vertical shift). In the rectified images, the
|
|
corresponding epipolar lines in the left and right cameras are horizontal and have the same
|
|
y-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx_1 & 0 \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx_2 & T_x*f \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix} ,\)
|
|
|
|
where \(T_x\) is a horizontal shift between the cameras and \(cx_1=cx_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Vertical stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly in the vertical direction (and probably a bit in the horizontal direction too). The epipolar
|
|
lines in the rectified images are vertical and have the same x-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_1 & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_2 & T_y*f \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix},\)
|
|
|
|
where \(T_y\) is a vertical shift between the cameras and \(cy_1=cy_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
As you can see, the first three columns of P1 and P2 will effectively be the new "rectified" camera
|
|
matrices. The matrices, together with R1 and R2 , can then be passed to #initUndistortRectifyMap to
|
|
initialize the rectification map for each camera.
|
|
|
|
See below the screenshot from the stereo_calib.cpp sample. Some red horizontal lines pass through
|
|
the corresponding image regions. This means that the images are well rectified, which is what most
|
|
stereo correspondence algorithms rely on. The green rectangles are roi1 and roi2 . You see that
|
|
their interiors are all valid pixels.
|
|
|
|
</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoRectify</h4>
|
|
<pre>public static void stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags)</pre>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>cameraMatrix2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>T</code> - Translation vector from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera. This matrix
|
|
brings points given in the unrectified first camera's coordinate system to points in the rectified
|
|
first camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified first camera's coordinate system to the rectified first camera's coordinate system.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera. This matrix
|
|
brings points given in the unrectified second camera's coordinate system to points in the rectified
|
|
second camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified second camera's coordinate system to the rectified second camera's coordinate system.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified first camera's image.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified second camera's image.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see REF: reprojectImageTo3D).</dd>
|
|
<dd><code>flags</code> - Operation flags that may be zero or REF: CALIB_ZERO_DISPARITY . If the flag is set,
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.
|
|
scaling. Otherwise, the parameter should be between 0 and 1. alpha=0 means that the rectified
|
|
images are zoomed and shifted so that only valid pixels are visible (no black areas after
|
|
rectification). alpha=1 means that the rectified image is decimated and shifted so that all the
|
|
pixels from the original images from the cameras are retained in the rectified images (no source
|
|
image pixels are lost). Any intermediate value yields an intermediate result between
|
|
those two extreme cases.
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to a larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
|
|
The function computes the rotation matrices for each camera that (virtually) make both camera image
|
|
planes the same plane. Consequently, this makes all the epipolar lines parallel and thus simplifies
|
|
the dense stereo correspondence problem. The function takes the matrices computed by #stereoCalibrate
|
|
as input. As output, it provides two rotation matrices and also two projection matrices in the new
|
|
coordinates. The function distinguishes the following two cases:
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Horizontal stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly along the x-axis (with possible small vertical shift). In the rectified images, the
|
|
corresponding epipolar lines in the left and right cameras are horizontal and have the same
|
|
y-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx_1 & 0 \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx_2 & T_x*f \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix} ,\)
|
|
|
|
where \(T_x\) is a horizontal shift between the cameras and \(cx_1=cx_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Vertical stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly in the vertical direction (and probably a bit in the horizontal direction too). The epipolar
|
|
lines in the rectified images are vertical and have the same x-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_1 & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_2 & T_y*f \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix},\)
|
|
|
|
where \(T_y\) is a vertical shift between the cameras and \(cy_1=cy_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
As you can see, the first three columns of P1 and P2 will effectively be the new "rectified" camera
|
|
matrices. The matrices, together with R1 and R2 , can then be passed to #initUndistortRectifyMap to
|
|
initialize the rectification map for each camera.
|
|
|
|
See below the screenshot from the stereo_calib.cpp sample. Some red horizontal lines pass through
|
|
the corresponding image regions. This means that the images are well rectified, which is what most
|
|
stereo correspondence algorithms rely on. The green rectangles are roi1 and roi2 . You see that
|
|
their interiors are all valid pixels.
|
|
|
|
</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoRectify</h4>
|
|
<pre>public static void stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
double alpha)</pre>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>cameraMatrix2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>T</code> - Translation vector from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera. This matrix
|
|
brings points given in the unrectified first camera's coordinate system to points in the rectified
|
|
first camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified first camera's coordinate system to the rectified first camera's coordinate system.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera. This matrix
|
|
brings points given in the unrectified second camera's coordinate system to points in the rectified
|
|
second camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified second camera's coordinate system to the rectified second camera's coordinate system.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified first camera's image.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified second camera's image.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see REF: reprojectImageTo3D).</dd>
|
|
<dd><code>flags</code> - Operation flags that may be zero or REF: CALIB_ZERO_DISPARITY . If the flag is set,
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.</dd>
|
|
<dd><code>alpha</code> - Free scaling parameter. If it is -1 or absent, the function performs the default
|
|
scaling. Otherwise, the parameter should be between 0 and 1. alpha=0 means that the rectified
|
|
images are zoomed and shifted so that only valid pixels are visible (no black areas after
|
|
rectification). alpha=1 means that the rectified image is decimated and shifted so that all the
|
|
pixels from the original images from the cameras are retained in the rectified images (no source
|
|
image pixels are lost). Any intermediate value yields an intermediate result between
|
|
those two extreme cases.
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to a larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
|
|
The function computes the rotation matrices for each camera that (virtually) make both camera image
|
|
planes the same plane. Consequently, this makes all the epipolar lines parallel and thus simplifies
|
|
the dense stereo correspondence problem. The function takes the matrices computed by #stereoCalibrate
|
|
as input. As output, it provides two rotation matrices and also two projection matrices in the new
|
|
coordinates. The function distinguishes the following two cases:
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Horizontal stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly along the x-axis (with possible small vertical shift). In the rectified images, the
|
|
corresponding epipolar lines in the left and right cameras are horizontal and have the same
|
|
y-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx_1 & 0 \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx_2 & T_x*f \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix} ,\)
|
|
|
|
where \(T_x\) is a horizontal shift between the cameras and \(cx_1=cx_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Vertical stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly in the vertical direction (and probably a bit in the horizontal direction too). The epipolar
|
|
lines in the rectified images are vertical and have the same x-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_1 & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_2 & T_y*f \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix},\)
|
|
|
|
where \(T_y\) is a vertical shift between the cameras and \(cy_1=cy_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
As you can see, the first three columns of P1 and P2 will effectively be the new "rectified" camera
|
|
matrices. The matrices, together with R1 and R2 , can then be passed to #initUndistortRectifyMap to
|
|
initialize the rectification map for each camera.
|
|
|
|
See below the screenshot from the stereo_calib.cpp sample. Some red horizontal lines pass through
|
|
the corresponding image regions. This means that the images are well rectified, which is what most
|
|
stereo correspondence algorithms rely on. The green rectangles are roi1 and roi2 . You see that
|
|
their interiors are all valid pixels.
|
|
|
|
</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-org.opencv.core.Size-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoRectify</h4>
|
|
<pre>public static void stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize)</pre>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>cameraMatrix2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>T</code> - Translation vector from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera. This matrix
|
|
brings points given in the unrectified first camera's coordinate system to points in the rectified
|
|
first camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified first camera's coordinate system to the rectified first camera's coordinate system.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera. This matrix
|
|
brings points given in the unrectified second camera's coordinate system to points in the rectified
|
|
second camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified second camera's coordinate system to the rectified second camera's coordinate system.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified first camera's image.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified second camera's image.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see REF: reprojectImageTo3D).</dd>
|
|
<dd><code>flags</code> - Operation flags that may be zero or REF: CALIB_ZERO_DISPARITY . If the flag is set,
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.</dd>
|
|
<dd><code>alpha</code> - Free scaling parameter. If it is -1 or absent, the function performs the default
|
|
scaling. Otherwise, the parameter should be between 0 and 1. alpha=0 means that the rectified
|
|
images are zoomed and shifted so that only valid pixels are visible (no black areas after
|
|
rectification). alpha=1 means that the rectified image is decimated and shifted so that all the
|
|
pixels from the original images from the cameras are retained in the rectified images (no source
|
|
image pixels are lost). Any intermediate value yields an intermediate result between
|
|
those two extreme cases.</dd>
|
|
<dd><code>newImageSize</code> - New image resolution after rectification. The same size should be passed to
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to a larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
|
|
The function computes the rotation matrices for each camera that (virtually) make both camera image
|
|
planes the same plane. Consequently, this makes all the epipolar lines parallel and thus simplifies
|
|
the dense stereo correspondence problem. The function takes the matrices computed by #stereoCalibrate
|
|
as input. As output, it provides two rotation matrices and also two projection matrices in the new
|
|
coordinates. The function distinguishes the following two cases:
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Horizontal stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly along the x-axis (with possible small vertical shift). In the rectified images, the
|
|
corresponding epipolar lines in the left and right cameras are horizontal and have the same
|
|
y-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx_1 & 0 \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx_2 & T_x*f \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix} ,\)
|
|
|
|
where \(T_x\) is a horizontal shift between the cameras and \(cx_1=cx_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Vertical stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly in the vertical direction (and probably a bit in the horizontal direction too). The epipolar
|
|
lines in the rectified images are vertical and have the same x-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_1 & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_2 & T_y*f \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix},\)
|
|
|
|
where \(T_y\) is a vertical shift between the cameras and \(cy_1=cy_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
As you can see, the first three columns of P1 and P2 will effectively be the new "rectified" camera
|
|
matrices. The matrices, together with R1 and R2 , can then be passed to #initUndistortRectifyMap to
|
|
initialize the rectification map for each camera.
|
|
|
|
See below the screenshot from the stereo_calib.cpp sample. Some red horizontal lines pass through
|
|
the corresponding image regions. This means that the images are well rectified, which is what most
|
|
stereo correspondence algorithms rely on. The green rectangles are roi1 and roi2 . You see that
|
|
their interiors are all valid pixels.
|
|
|
|
</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-org.opencv.core.Size-org.opencv.core.Rect-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoRectify</h4>
|
|
<pre>public static void stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI1)</pre>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>cameraMatrix2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>T</code> - Translation vector from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera. This matrix
|
|
brings points given in the unrectified first camera's coordinate system to points in the rectified
|
|
first camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified first camera's coordinate system to the rectified first camera's coordinate system.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera. This matrix
|
|
brings points given in the unrectified second camera's coordinate system to points in the rectified
|
|
second camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified second camera's coordinate system to the rectified second camera's coordinate system.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified first camera's image.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified second camera's image.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see REF: reprojectImageTo3D).</dd>
|
|
<dd><code>flags</code> - Operation flags that may be zero or REF: CALIB_ZERO_DISPARITY . If the flag is set,
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.</dd>
|
|
<dd><code>alpha</code> - Free scaling parameter. If it is -1 or absent, the function performs the default
|
|
scaling. Otherwise, the parameter should be between 0 and 1. alpha=0 means that the rectified
|
|
images are zoomed and shifted so that only valid pixels are visible (no black areas after
|
|
rectification). alpha=1 means that the rectified image is decimated and shifted so that all the
|
|
pixels from the original images from the cameras are retained in the rectified images (no source
|
|
image pixels are lost). Any intermediate value yields an intermediate result between
|
|
those two extreme cases.</dd>
|
|
<dd><code>newImageSize</code> - New image resolution after rectification. The same size should be passed to
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to a larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.</dd>
|
|
<dd><code>validPixROI1</code> - Optional output rectangles inside the rectified images where all the pixels
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
|
|
The function computes the rotation matrices for each camera that (virtually) make both camera image
|
|
planes the same plane. Consequently, this makes all the epipolar lines parallel and thus simplifies
|
|
the dense stereo correspondence problem. The function takes the matrices computed by #stereoCalibrate
|
|
as input. As output, it provides two rotation matrices and also two projection matrices in the new
|
|
coordinates. The function distinguishes the following two cases:
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Horizontal stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly along the x-axis (with possible small vertical shift). In the rectified images, the
|
|
corresponding epipolar lines in the left and right cameras are horizontal and have the same
|
|
y-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx_1 & 0 \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx_2 & T_x*f \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix} ,\)
|
|
|
|
where \(T_x\) is a horizontal shift between the cameras and \(cx_1=cx_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Vertical stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly in the vertical direction (and probably a bit in the horizontal direction too). The epipolar
|
|
lines in the rectified images are vertical and have the same x-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_1 & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_2 & T_y*f \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix},\)
|
|
|
|
where \(T_y\) is a vertical shift between the cameras and \(cy_1=cy_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
As you can see, the first three columns of P1 and P2 will effectively be the new "rectified" camera
|
|
matrices. The matrices, together with R1 and R2 , can then be passed to #initUndistortRectifyMap to
|
|
initialize the rectification map for each camera.
|
|
|
|
See below the screenshot from the stereo_calib.cpp sample. Some red horizontal lines pass through
|
|
the corresponding image regions. This means that the images are well rectified, which is what most
|
|
stereo correspondence algorithms rely on. The green rectangles are roi1 and roi2 . You see that
|
|
their interiors are all valid pixels.
|
|
|
|
</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoRectify-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-int-double-org.opencv.core.Size-org.opencv.core.Rect-org.opencv.core.Rect-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoRectify</h4>
|
|
<pre>public static void stereoRectify(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs2,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imageSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> T,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> Q,
|
|
int flags,
|
|
double alpha,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> newImageSize,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI1,
|
|
<a href="../../../org/opencv/core/Rect.html" title="class in org.opencv.core">Rect</a> validPixROI2)</pre>
|
|
<div class="block">Computes rectification transforms for each head of a calibrated stereo camera.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>cameraMatrix1</code> - First camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs1</code> - First camera distortion parameters.</dd>
|
|
<dd><code>cameraMatrix2</code> - Second camera intrinsic matrix.</dd>
|
|
<dd><code>distCoeffs2</code> - Second camera distortion parameters.</dd>
|
|
<dd><code>imageSize</code> - Size of the image used for stereo calibration.</dd>
|
|
<dd><code>R</code> - Rotation matrix from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>T</code> - Translation vector from the coordinate system of the first camera to the second camera,
|
|
see REF: stereoCalibrate.</dd>
|
|
<dd><code>R1</code> - Output 3x3 rectification transform (rotation matrix) for the first camera. This matrix
|
|
brings points given in the unrectified first camera's coordinate system to points in the rectified
|
|
first camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified first camera's coordinate system to the rectified first camera's coordinate system.</dd>
|
|
<dd><code>R2</code> - Output 3x3 rectification transform (rotation matrix) for the second camera. This matrix
|
|
brings points given in the unrectified second camera's coordinate system to points in the rectified
|
|
second camera's coordinate system. In more technical terms, it performs a change of basis from the
|
|
unrectified second camera's coordinate system to the rectified second camera's coordinate system.</dd>
|
|
<dd><code>P1</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the first
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified first camera's image.</dd>
|
|
<dd><code>P2</code> - Output 3x4 projection matrix in the new (rectified) coordinate systems for the second
|
|
camera, i.e. it projects points given in the rectified first camera coordinate system into the
|
|
rectified second camera's image.</dd>
|
|
<dd><code>Q</code> - Output \(4 \times 4\) disparity-to-depth mapping matrix (see REF: reprojectImageTo3D).</dd>
|
|
<dd><code>flags</code> - Operation flags that may be zero or REF: CALIB_ZERO_DISPARITY . If the flag is set,
|
|
the function makes the principal points of each camera have the same pixel coordinates in the
|
|
rectified views. And if the flag is not set, the function may still shift the images in the
|
|
horizontal or vertical direction (depending on the orientation of epipolar lines) to maximize the
|
|
useful image area.</dd>
|
|
<dd><code>alpha</code> - Free scaling parameter. If it is -1 or absent, the function performs the default
|
|
scaling. Otherwise, the parameter should be between 0 and 1. alpha=0 means that the rectified
|
|
images are zoomed and shifted so that only valid pixels are visible (no black areas after
|
|
rectification). alpha=1 means that the rectified image is decimated and shifted so that all the
|
|
pixels from the original images from the cameras are retained in the rectified images (no source
|
|
image pixels are lost). Any intermediate value yields an intermediate result between
|
|
those two extreme cases.</dd>
|
|
<dd><code>newImageSize</code> - New image resolution after rectification. The same size should be passed to
|
|
#initUndistortRectifyMap (see the stereo_calib.cpp sample in OpenCV samples directory). When (0,0)
|
|
is passed (default), it is set to the original imageSize . Setting it to a larger value can help you
|
|
preserve details in the original image, especially when there is a big radial distortion.</dd>
|
|
<dd><code>validPixROI1</code> - Optional output rectangles inside the rectified images where all the pixels
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).</dd>
|
|
<dd><code>validPixROI2</code> - Optional output rectangles inside the rectified images where all the pixels
|
|
are valid. If alpha=0 , the ROIs cover the whole images. Otherwise, they are likely to be smaller
|
|
(see the picture below).
|
|
|
|
The function computes the rotation matrices for each camera that (virtually) make both camera image
|
|
planes the same plane. Consequently, this makes all the epipolar lines parallel and thus simplifies
|
|
the dense stereo correspondence problem. The function takes the matrices computed by #stereoCalibrate
|
|
as input. As output, it provides two rotation matrices and also two projection matrices in the new
|
|
coordinates. The function distinguishes the following two cases:
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Horizontal stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly along the x-axis (with possible small vertical shift). In the rectified images, the
|
|
corresponding epipolar lines in the left and right cameras are horizontal and have the same
|
|
y-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx_1 & 0 \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx_2 & T_x*f \\
|
|
0 & f & cy & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix} ,\)
|
|
|
|
where \(T_x\) is a horizontal shift between the cameras and \(cx_1=cx_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
<ul>
|
|
<li>
|
|
<b>Vertical stereo</b>: the first and the second camera views are shifted relative to each other
|
|
mainly in the vertical direction (and probably a bit in the horizontal direction too). The epipolar
|
|
lines in the rectified images are vertical and have the same x-coordinate. P1 and P2 look like:
|
|
</li>
|
|
</ul>
|
|
|
|
\(\texttt{P1} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_1 & 0 \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix}\)
|
|
|
|
\(\texttt{P2} = \begin{bmatrix}
|
|
f & 0 & cx & 0 \\
|
|
0 & f & cy_2 & T_y*f \\
|
|
0 & 0 & 1 & 0
|
|
\end{bmatrix},\)
|
|
|
|
where \(T_y\) is a vertical shift between the cameras and \(cy_1=cy_2\) if
|
|
REF: CALIB_ZERO_DISPARITY is set.
|
|
|
|
As you can see, the first three columns of P1 and P2 will effectively be the new "rectified" camera
|
|
matrices. The matrices, together with R1 and R2 , can then be passed to #initUndistortRectifyMap to
|
|
initialize the rectification map for each camera.
|
|
|
|
See below the screenshot from the stereo_calib.cpp sample. Some red horizontal lines pass through
|
|
the corresponding image regions. This means that the images are well rectified, which is what most
|
|
stereo correspondence algorithms rely on. The green rectangles are roi1 and roi2 . You see that
|
|
their interiors are all valid pixels.
|
|
|
|
</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoRectifyUncalibrated-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoRectifyUncalibrated</h4>
|
|
<pre>public static boolean stereoRectifyUncalibrated(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imgSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H2)</pre>
|
|
<div class="block">Computes a rectification transform for an uncalibrated stereo camera.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of feature points in the first image.</dd>
|
|
<dd><code>points2</code> - The corresponding points in the second image. The same formats as in
|
|
#findFundamentalMat are supported.</dd>
|
|
<dd><code>F</code> - Input fundamental matrix. It can be computed from the same set of point pairs using
|
|
#findFundamentalMat .</dd>
|
|
<dd><code>imgSize</code> - Size of the image.</dd>
|
|
<dd><code>H1</code> - Output rectification homography matrix for the first image.</dd>
|
|
<dd><code>H2</code> - Output rectification homography matrix for the second image.
|
|
than zero, all the point pairs that do not comply with the epipolar geometry (that is, the points
|
|
for which \(|\texttt{points2[i]}^T*\texttt{F}*\texttt{points1[i]}|>\texttt{threshold}\) ) are
|
|
rejected prior to computing the homographies. Otherwise, all the points are considered inliers.
|
|
|
|
The function computes the rectification transformations without knowing intrinsic parameters of the
|
|
cameras and their relative position in the space, which explains the suffix "uncalibrated". Another
|
|
related difference from #stereoRectify is that the function outputs not the rectification
|
|
transformations in the object (3D) space, but the planar perspective transformations encoded by the
|
|
homography matrices H1 and H2 . The function implements the algorithm CITE: Hartley99 .
|
|
|
|
<b>Note:</b>
|
|
While the algorithm does not need to know the intrinsic parameters of the cameras, it heavily
|
|
depends on the epipolar geometry. Therefore, if the camera lenses have a significant distortion,
|
|
it would be better to correct it before computing the fundamental matrix and calling this
|
|
function. For example, distortion coefficients can be estimated for each head of stereo camera
|
|
separately by using #calibrateCamera . Then, the images can be corrected using #undistort , or
|
|
just the point coordinates can be corrected with #undistortPoints .</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="stereoRectifyUncalibrated-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Size-org.opencv.core.Mat-org.opencv.core.Mat-double-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>stereoRectifyUncalibrated</h4>
|
|
<pre>public static boolean stereoRectifyUncalibrated(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> F,
|
|
<a href="../../../org/opencv/core/Size.html" title="class in org.opencv.core">Size</a> imgSize,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> H2,
|
|
double threshold)</pre>
|
|
<div class="block">Computes a rectification transform for an uncalibrated stereo camera.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>points1</code> - Array of feature points in the first image.</dd>
|
|
<dd><code>points2</code> - The corresponding points in the second image. The same formats as in
|
|
#findFundamentalMat are supported.</dd>
|
|
<dd><code>F</code> - Input fundamental matrix. It can be computed from the same set of point pairs using
|
|
#findFundamentalMat .</dd>
|
|
<dd><code>imgSize</code> - Size of the image.</dd>
|
|
<dd><code>H1</code> - Output rectification homography matrix for the first image.</dd>
|
|
<dd><code>H2</code> - Output rectification homography matrix for the second image.</dd>
|
|
<dd><code>threshold</code> - Optional threshold used to filter out the outliers. If the parameter is greater
|
|
than zero, all the point pairs that do not comply with the epipolar geometry (that is, the points
|
|
for which \(|\texttt{points2[i]}^T*\texttt{F}*\texttt{points1[i]}|>\texttt{threshold}\) ) are
|
|
rejected prior to computing the homographies. Otherwise, all the points are considered inliers.
|
|
|
|
The function computes the rectification transformations without knowing intrinsic parameters of the
|
|
cameras and their relative position in the space, which explains the suffix "uncalibrated". Another
|
|
related difference from #stereoRectify is that the function outputs not the rectification
|
|
transformations in the object (3D) space, but the planar perspective transformations encoded by the
|
|
homography matrices H1 and H2 . The function implements the algorithm CITE: Hartley99 .
|
|
|
|
<b>Note:</b>
|
|
While the algorithm does not need to know the intrinsic parameters of the cameras, it heavily
|
|
depends on the epipolar geometry. Therefore, if the camera lenses have a significant distortion,
|
|
it would be better to correct it before computing the fundamental matrix and calling this
|
|
function. For example, distortion coefficients can be estimated for each head of stereo camera
|
|
separately by using #calibrateCamera . Then, the images can be corrected using #undistort , or
|
|
just the point coordinates can be corrected with #undistortPoints .</dd>
|
|
<dt><span class="returnLabel">Returns:</span></dt>
|
|
<dd>automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="triangulatePoints-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>triangulatePoints</h4>
|
|
<pre>public static void triangulatePoints(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatr1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projMatr2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projPoints1,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> projPoints2,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> points4D)</pre>
|
|
<div class="block">This function reconstructs 3-dimensional points (in homogeneous coordinates) by using
|
|
their observations with a stereo camera.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>projMatr1</code> - 3x4 projection matrix of the first camera, i.e. this matrix projects 3D points
|
|
given in the world's coordinate system into the first image.</dd>
|
|
<dd><code>projMatr2</code> - 3x4 projection matrix of the second camera, i.e. this matrix projects 3D points
|
|
given in the world's coordinate system into the second image.</dd>
|
|
<dd><code>projPoints1</code> - 2xN array of feature points in the first image. In the case of the c++ version,
|
|
it can be also a vector of feature points or two-channel matrix of size 1xN or Nx1.</dd>
|
|
<dd><code>projPoints2</code> - 2xN array of corresponding points in the second image. In the case of the c++
|
|
version, it can be also a vector of feature points or two-channel matrix of size 1xN or Nx1.</dd>
|
|
<dd><code>points4D</code> - 4xN array of reconstructed points in homogeneous coordinates. These points are
|
|
returned in the world's coordinate system.
|
|
|
|
<b>Note:</b>
|
|
Keep in mind that all input data should be of float type in order for this function to work.
|
|
|
|
<b>Note:</b>
|
|
If the projection matrices from REF: stereoRectify are used, then the returned points are
|
|
represented in the first camera's rectified coordinate system.
|
|
|
|
SEE:
|
|
reprojectImageTo3D</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="undistort-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>undistort</h4>
|
|
<pre>public static void undistort(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs)</pre>
|
|
<div class="block">Transforms an image to compensate for lens distortion.
|
|
|
|
The function transforms an image to compensate radial and tangential lens distortion.
|
|
|
|
The function is simply a combination of #initUndistortRectifyMap (with unity R ) and #remap
|
|
(with bilinear interpolation). See the former function for details of the transformation being
|
|
performed.
|
|
|
|
Those pixels in the destination image, for which there is no correspondent pixels in the source
|
|
image, are filled with zeros (black color).
|
|
|
|
A particular subset of the source image that will be visible in the corrected image can be regulated
|
|
by newCameraMatrix. You can use #getOptimalNewCameraMatrix to compute the appropriate
|
|
newCameraMatrix depending on your requirements.
|
|
|
|
The camera matrix and the distortion parameters can be determined using #calibrateCamera. If
|
|
the resolution of images is different from the resolution used at the calibration stage, \(f_x,
|
|
f_y, c_x\) and \(c_y\) need to be scaled accordingly, while the distortion coefficients remain
|
|
the same.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - Input (distorted) image.</dd>
|
|
<dd><code>dst</code> - Output (corrected) image that has the same size and type as src .</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera matrix \(A = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.
|
|
cameraMatrix but you may additionally scale and shift the result by using a different matrix.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="undistort-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>undistort</h4>
|
|
<pre>public static void undistort(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> newCameraMatrix)</pre>
|
|
<div class="block">Transforms an image to compensate for lens distortion.
|
|
|
|
The function transforms an image to compensate radial and tangential lens distortion.
|
|
|
|
The function is simply a combination of #initUndistortRectifyMap (with unity R ) and #remap
|
|
(with bilinear interpolation). See the former function for details of the transformation being
|
|
performed.
|
|
|
|
Those pixels in the destination image, for which there is no correspondent pixels in the source
|
|
image, are filled with zeros (black color).
|
|
|
|
A particular subset of the source image that will be visible in the corrected image can be regulated
|
|
by newCameraMatrix. You can use #getOptimalNewCameraMatrix to compute the appropriate
|
|
newCameraMatrix depending on your requirements.
|
|
|
|
The camera matrix and the distortion parameters can be determined using #calibrateCamera. If
|
|
the resolution of images is different from the resolution used at the calibration stage, \(f_x,
|
|
f_y, c_x\) and \(c_y\) need to be scaled accordingly, while the distortion coefficients remain
|
|
the same.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - Input (distorted) image.</dd>
|
|
<dd><code>dst</code> - Output (corrected) image that has the same size and type as src .</dd>
|
|
<dd><code>cameraMatrix</code> - Input camera matrix \(A = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>newCameraMatrix</code> - Camera matrix of the distorted image. By default, it is the same as
|
|
cameraMatrix but you may additionally scale and shift the result by using a different matrix.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="undistortPoints-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>undistortPoints</h4>
|
|
<pre>public static void undistortPoints(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> src,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs)</pre>
|
|
<div class="block">Computes the ideal point coordinates from the observed point coordinates.
|
|
|
|
The function is similar to #undistort and #initUndistortRectifyMap but it operates on a
|
|
sparse set of points instead of a raster image. Also the function performs a reverse transformation
|
|
to #projectPoints. In case of a 3D object, it does not reconstruct its 3D coordinates, but for a
|
|
planar object, it does, up to a translation vector, if the proper R is specified.
|
|
|
|
For each observed point coordinate \((u, v)\) the function computes:
|
|
\(
|
|
\begin{array}{l}
|
|
x^{"} \leftarrow (u - c_x)/f_x \\
|
|
y^{"} \leftarrow (v - c_y)/f_y \\
|
|
(x',y') = undistort(x^{"},y^{"}, \texttt{distCoeffs}) \\
|
|
{[X\,Y\,W]} ^T \leftarrow R*[x' \, y' \, 1]^T \\
|
|
x \leftarrow X/W \\
|
|
y \leftarrow Y/W \\
|
|
\text{only performed if P is specified:} \\
|
|
u' \leftarrow x {f'}_x + {c'}_x \\
|
|
v' \leftarrow y {f'}_y + {c'}_y
|
|
\end{array}
|
|
\)
|
|
|
|
where *undistort* is an approximate iterative algorithm that estimates the normalized original
|
|
point coordinates out of the normalized distorted point coordinates ("normalized" means that the
|
|
coordinates do not depend on the camera matrix).
|
|
|
|
The function can be used for both a stereo camera head or a monocular camera (when R is empty).</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - Observed point coordinates, 2xN/Nx2 1-channel or 1xN/Nx1 2-channel (CV_32FC2 or CV_64FC2) (or
|
|
vector<Point2f> ).</dd>
|
|
<dd><code>dst</code> - Output ideal point coordinates (1xN/Nx1 2-channel or vector<Point2f> ) after undistortion and reverse perspective
|
|
transformation. If matrix P is identity or omitted, dst will contain normalized point coordinates.</dd>
|
|
<dd><code>cameraMatrix</code> - Camera matrix \(\vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.
|
|
#stereoRectify can be passed here. If the matrix is empty, the identity transformation is used.
|
|
#stereoRectify can be passed here. If the matrix is empty, the identity new camera matrix is used.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="undistortPoints-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>undistortPoints</h4>
|
|
<pre>public static void undistortPoints(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> src,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R)</pre>
|
|
<div class="block">Computes the ideal point coordinates from the observed point coordinates.
|
|
|
|
The function is similar to #undistort and #initUndistortRectifyMap but it operates on a
|
|
sparse set of points instead of a raster image. Also the function performs a reverse transformation
|
|
to #projectPoints. In case of a 3D object, it does not reconstruct its 3D coordinates, but for a
|
|
planar object, it does, up to a translation vector, if the proper R is specified.
|
|
|
|
For each observed point coordinate \((u, v)\) the function computes:
|
|
\(
|
|
\begin{array}{l}
|
|
x^{"} \leftarrow (u - c_x)/f_x \\
|
|
y^{"} \leftarrow (v - c_y)/f_y \\
|
|
(x',y') = undistort(x^{"},y^{"}, \texttt{distCoeffs}) \\
|
|
{[X\,Y\,W]} ^T \leftarrow R*[x' \, y' \, 1]^T \\
|
|
x \leftarrow X/W \\
|
|
y \leftarrow Y/W \\
|
|
\text{only performed if P is specified:} \\
|
|
u' \leftarrow x {f'}_x + {c'}_x \\
|
|
v' \leftarrow y {f'}_y + {c'}_y
|
|
\end{array}
|
|
\)
|
|
|
|
where *undistort* is an approximate iterative algorithm that estimates the normalized original
|
|
point coordinates out of the normalized distorted point coordinates ("normalized" means that the
|
|
coordinates do not depend on the camera matrix).
|
|
|
|
The function can be used for both a stereo camera head or a monocular camera (when R is empty).</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - Observed point coordinates, 2xN/Nx2 1-channel or 1xN/Nx1 2-channel (CV_32FC2 or CV_64FC2) (or
|
|
vector<Point2f> ).</dd>
|
|
<dd><code>dst</code> - Output ideal point coordinates (1xN/Nx1 2-channel or vector<Point2f> ) after undistortion and reverse perspective
|
|
transformation. If matrix P is identity or omitted, dst will contain normalized point coordinates.</dd>
|
|
<dd><code>cameraMatrix</code> - Camera matrix \(\vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>R</code> - Rectification transformation in the object space (3x3 matrix). R1 or R2 computed by
|
|
#stereoRectify can be passed here. If the matrix is empty, the identity transformation is used.
|
|
#stereoRectify can be passed here. If the matrix is empty, the identity new camera matrix is used.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="undistortPoints-org.opencv.core.MatOfPoint2f-org.opencv.core.MatOfPoint2f-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>undistortPoints</h4>
|
|
<pre>public static void undistortPoints(<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> src,
|
|
<a href="../../../org/opencv/core/MatOfPoint2f.html" title="class in org.opencv.core">MatOfPoint2f</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P)</pre>
|
|
<div class="block">Computes the ideal point coordinates from the observed point coordinates.
|
|
|
|
The function is similar to #undistort and #initUndistortRectifyMap but it operates on a
|
|
sparse set of points instead of a raster image. Also the function performs a reverse transformation
|
|
to #projectPoints. In case of a 3D object, it does not reconstruct its 3D coordinates, but for a
|
|
planar object, it does, up to a translation vector, if the proper R is specified.
|
|
|
|
For each observed point coordinate \((u, v)\) the function computes:
|
|
\(
|
|
\begin{array}{l}
|
|
x^{"} \leftarrow (u - c_x)/f_x \\
|
|
y^{"} \leftarrow (v - c_y)/f_y \\
|
|
(x',y') = undistort(x^{"},y^{"}, \texttt{distCoeffs}) \\
|
|
{[X\,Y\,W]} ^T \leftarrow R*[x' \, y' \, 1]^T \\
|
|
x \leftarrow X/W \\
|
|
y \leftarrow Y/W \\
|
|
\text{only performed if P is specified:} \\
|
|
u' \leftarrow x {f'}_x + {c'}_x \\
|
|
v' \leftarrow y {f'}_y + {c'}_y
|
|
\end{array}
|
|
\)
|
|
|
|
where *undistort* is an approximate iterative algorithm that estimates the normalized original
|
|
point coordinates out of the normalized distorted point coordinates ("normalized" means that the
|
|
coordinates do not depend on the camera matrix).
|
|
|
|
The function can be used for both a stereo camera head or a monocular camera (when R is empty).</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - Observed point coordinates, 2xN/Nx2 1-channel or 1xN/Nx1 2-channel (CV_32FC2 or CV_64FC2) (or
|
|
vector<Point2f> ).</dd>
|
|
<dd><code>dst</code> - Output ideal point coordinates (1xN/Nx1 2-channel or vector<Point2f> ) after undistortion and reverse perspective
|
|
transformation. If matrix P is identity or omitted, dst will contain normalized point coordinates.</dd>
|
|
<dd><code>cameraMatrix</code> - Camera matrix \(\vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\) .</dd>
|
|
<dd><code>distCoeffs</code> - Input vector of distortion coefficients
|
|
\((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6[, s_1, s_2, s_3, s_4[, \tau_x, \tau_y]]]])\)
|
|
of 4, 5, 8, 12 or 14 elements. If the vector is NULL/empty, the zero distortion coefficients are assumed.</dd>
|
|
<dd><code>R</code> - Rectification transformation in the object space (3x3 matrix). R1 or R2 computed by
|
|
#stereoRectify can be passed here. If the matrix is empty, the identity transformation is used.</dd>
|
|
<dd><code>P</code> - New camera matrix (3x3) or new projection matrix (3x4) \(\begin{bmatrix} {f'}_x & 0 & {c'}_x & t_x \\ 0 & {f'}_y & {c'}_y & t_y \\ 0 & 0 & 1 & t_z \end{bmatrix}\). P1 or P2 computed by
|
|
#stereoRectify can be passed here. If the matrix is empty, the identity new camera matrix is used.</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="undistortPointsIter-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.Mat-org.opencv.core.TermCriteria-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>undistortPointsIter</h4>
|
|
<pre>public static void undistortPointsIter(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> src,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> dst,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cameraMatrix,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> distCoeffs,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> R,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> P,
|
|
<a href="../../../org/opencv/core/TermCriteria.html" title="class in org.opencv.core">TermCriteria</a> criteria)</pre>
|
|
<div class="block"><b>Note:</b> Default version of #undistortPoints does 5 iterations to compute undistorted points.</div>
|
|
<dl>
|
|
<dt><span class="paramLabel">Parameters:</span></dt>
|
|
<dd><code>src</code> - automatically generated</dd>
|
|
<dd><code>dst</code> - automatically generated</dd>
|
|
<dd><code>cameraMatrix</code> - automatically generated</dd>
|
|
<dd><code>distCoeffs</code> - automatically generated</dd>
|
|
<dd><code>R</code> - automatically generated</dd>
|
|
<dd><code>P</code> - automatically generated</dd>
|
|
<dd><code>criteria</code> - automatically generated</dd>
|
|
</dl>
|
|
</li>
|
|
</ul>
|
|
<a name="validateDisparity-org.opencv.core.Mat-org.opencv.core.Mat-int-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockList">
|
|
<li class="blockList">
|
|
<h4>validateDisparity</h4>
|
|
<pre>public static void validateDisparity(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cost,
|
|
int minDisparity,
|
|
int numberOfDisparities)</pre>
|
|
</li>
|
|
</ul>
|
|
<a name="validateDisparity-org.opencv.core.Mat-org.opencv.core.Mat-int-int-int-">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="blockListLast">
|
|
<li class="blockList">
|
|
<h4>validateDisparity</h4>
|
|
<pre>public static void validateDisparity(<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> disparity,
|
|
<a href="../../../org/opencv/core/Mat.html" title="class in org.opencv.core">Mat</a> cost,
|
|
int minDisparity,
|
|
int numberOfDisparities,
|
|
int disp12MaxDisp)</pre>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<!-- ========= END OF CLASS DATA ========= -->
|
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
|
<div class="bottomNav"><a name="navbar.bottom">
|
|
<!-- -->
|
|
</a>
|
|
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
|
|
<a name="navbar.bottom.firstrow">
|
|
<!-- -->
|
|
</a>
|
|
<ul class="navList" title="Navigation">
|
|
<li><a href="../../../overview-summary.html">Overview</a></li>
|
|
<li><a href="package-summary.html">Package</a></li>
|
|
<li class="navBarCell1Rev">Class</li>
|
|
<li><a href="package-tree.html">Tree</a></li>
|
|
<li><a href="../../../index-all.html">Index</a></li>
|
|
<li><a href="../../../help-doc.html">Help</a></li>
|
|
</ul>
|
|
<div class="aboutLanguage">
|
|
<script>
|
|
var url = window.location.href;
|
|
var pos = url.lastIndexOf('/javadoc/');
|
|
url = pos >= 0 ? (url.substring(0, pos) + '/javadoc/mymath.js') : (window.location.origin + '/mymath.js');
|
|
var script = document.createElement('script');
|
|
script.src = 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML,' + url;
|
|
document.getElementsByTagName('head')[0].appendChild(script);
|
|
</script>
|
|
</div>
|
|
</div>
|
|
<div class="subNav">
|
|
<ul class="navList">
|
|
<li>Prev Class</li>
|
|
<li><a href="../../../org/opencv/calib3d/StereoBM.html" title="class in org.opencv.calib3d"><span class="typeNameLink">Next Class</span></a></li>
|
|
</ul>
|
|
<ul class="navList">
|
|
<li><a href="../../../index.html?org/opencv/calib3d/Calib3d.html" target="_top">Frames</a></li>
|
|
<li><a href="Calib3d.html" target="_top">No Frames</a></li>
|
|
</ul>
|
|
<ul class="navList" id="allclasses_navbar_bottom">
|
|
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
|
|
</ul>
|
|
<div>
|
|
<script type="text/javascript"><!--
|
|
allClassesLink = document.getElementById("allclasses_navbar_bottom");
|
|
if(window==top) {
|
|
allClassesLink.style.display = "block";
|
|
}
|
|
else {
|
|
allClassesLink.style.display = "none";
|
|
}
|
|
//-->
|
|
</script>
|
|
</div>
|
|
<div>
|
|
<ul class="subNavList">
|
|
<li>Summary: </li>
|
|
<li>Nested | </li>
|
|
<li><a href="#field.summary">Field</a> | </li>
|
|
<li><a href="#constructor.summary">Constr</a> | </li>
|
|
<li><a href="#method.summary">Method</a></li>
|
|
</ul>
|
|
<ul class="subNavList">
|
|
<li>Detail: </li>
|
|
<li><a href="#field.detail">Field</a> | </li>
|
|
<li><a href="#constructor.detail">Constr</a> | </li>
|
|
<li><a href="#method.detail">Method</a></li>
|
|
</ul>
|
|
</div>
|
|
<a name="skip.navbar.bottom">
|
|
<!-- -->
|
|
</a></div>
|
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
|
<p class="legalCopy"><small>Generated on 2021-12-25 08:13:27 / OpenCV 4.5.5</small></p>
|
|
</body>
|
|
</html>
|