From c8cebce6788a13a31bfb89f3eb7e22698cd7dba8 Mon Sep 17 00:00:00 2001 From: VahdPourAmin Date: Thu, 26 Aug 2021 09:35:15 +0200 Subject: [PATCH] add freak kernel init --- CPU_version/Forster2014ICRA.pdf | Bin 1469859 -> 0 bytes CPU_version/LICENCE | 675 ------- CPU_version/README.md | 64 - CPU_version/__init__.py | 0 CPU_version/svo/.idea/.gitignore | 8 - CPU_version/svo/.idea/misc.xml | 4 - CPU_version/svo/.idea/modules.xml | 8 - CPU_version/svo/.idea/svo.iml | 2 - CPU_version/svo/.idea/vcs.xml | 6 - CPU_version/svo/CMakeLists.txt | 156 -- CPU_version/svo/CMakeModules/FindEigen.cmake | 81 - CPU_version/svo/CMakeModules/FindG2O.cmake | 113 -- CPU_version/svo/Doxyfile | 1782 ----------------- CPU_version/svo/doc/.gitignore | 2 - CPU_version/svo/doc/notation.ipe | 312 --- CPU_version/svo/doc/notation.pdf | Bin 50379 -> 0 bytes CPU_version/svo/doc/notation.png | Bin 27376 -> 0 bytes .../svo/include/svo/bundle_adjustment.h | 109 - CPU_version/svo/include/svo/config.h | 177 -- CPU_version/svo/include/svo/depth_filter.h | 171 -- CPU_version/svo/include/svo/feature.h | 75 - .../svo/include/svo/feature_alignment.h | 63 - .../svo/include/svo/feature_detection.h | 107 - CPU_version/svo/include/svo/frame.h | 154 -- .../svo/include/svo/frame_handler_base.h | 123 -- .../svo/include/svo/frame_handler_mono.h | 104 - CPU_version/svo/include/svo/global.h | 101 - CPU_version/svo/include/svo/imu_integration.h | 121 -- CPU_version/svo/include/svo/initialization.h | 83 - CPU_version/svo/include/svo/map.h | 136 -- CPU_version/svo/include/svo/matcher.h | 130 -- CPU_version/svo/include/svo/point.h | 108 - CPU_version/svo/include/svo/pose_optimizer.h | 50 - CPU_version/svo/include/svo/reprojector.h | 101 - .../svo/include/svo/sparse_img_align.h | 83 - CPU_version/svo/include/svo/svoVisionFactor.h | 70 - CPU_version/svo/package.xml | 27 - CPU_version/svo/src/bundle_adjustment.cpp | 435 ---- CPU_version/svo/src/config.cpp | 102 - CPU_version/svo/src/depth_filter.cpp | 352 ---- CPU_version/svo/src/feature_alignment.cpp | 601 ------ CPU_version/svo/src/feature_detection.cpp | 118 -- CPU_version/svo/src/frame.cpp | 190 -- CPU_version/svo/src/frame_handler_base.cpp | 199 -- CPU_version/svo/src/frame_handler_mono.cpp | 307 --- CPU_version/svo/src/imu_integration.cpp | 153 -- CPU_version/svo/src/initialization.cpp | 199 -- CPU_version/svo/src/map.cpp | 368 ---- CPU_version/svo/src/matcher.cpp | 323 --- CPU_version/svo/src/point.cpp | 179 -- CPU_version/svo/src/pose_optimizer.cpp | 165 -- CPU_version/svo/src/reprojector.cpp | 219 -- CPU_version/svo/src/sparse_img_align.cpp | 274 --- CPU_version/svo/test/README.md | 24 - CPU_version/svo/test/benchmark.csv | 307 --- CPU_version/svo/test/data/.gitignore | 2 - CPU_version/svo/test/results/.gitignore | 2 - CPU_version/svo/test/test_depth_filter.cpp | 206 -- .../svo/test/test_feature_alignment.cpp | 124 -- .../svo/test/test_feature_detection.cpp | 74 - CPU_version/svo/test/test_matcher.cpp | 200 -- CPU_version/svo/test/test_pipeline.cpp | 98 - CPU_version/svo/test/test_pose_optimizer.cpp | 110 - .../svo/test/test_sparse_img_align.cpp | 163 -- CPU_version/svo/test/test_utils.h | 57 - CPU_version/svo_analysis/.gitignore | 1 - CPU_version/svo_analysis/CMakeLists.txt | 8 - CPU_version/svo_analysis/README.md | 27 - CPU_version/svo_analysis/__init__.py | 0 .../svo_analysis/comparisons/speed.yaml | 14 - .../svo_analysis/comparisons/textures.yaml | 22 - .../svo_analysis/experiments/.gitignore | 2 - CPU_version/svo_analysis/package.xml | 19 - CPU_version/svo_analysis/results/.gitignore | 2 - CPU_version/svo_analysis/scripts/__init__.py | 0 CPU_version/svo_analysis/scripts/benchmark.py | 111 - .../svo_analysis/scripts/compare_results.py | 150 -- .../svo_analysis/scripts/comparison.py | 159 -- CPU_version/svo_analysis/scripts/evaluate.py | 58 - CPU_version/svo_analysis/setup.py | 12 - CPU_version/svo_analysis/src/__init__.py | 0 .../svo_analysis/src/svo_analysis/__init__.py | 0 .../src/svo_analysis/analyse_dataset.py | 41 - .../src/svo_analysis/analyse_depth.py | 66 - .../src/svo_analysis/analyse_logs.py | 74 - .../src/svo_analysis/analyse_timing.py | 68 - .../src/svo_analysis/analyse_trajectory.py | 185 -- .../svo_analysis/filter_groundtruth_smooth.py | 60 - .../src/svo_analysis/hand_eye_calib.py | 227 --- .../tum_benchmark_tools/__init__.py | 2 - .../tum_benchmark_tools/associate.py | 130 -- .../tum_benchmark_tools/evaluate_ate.py | 194 -- .../tum_benchmark_tools/evaluate_rpe.py | 382 ---- CPU_version/svo_msgs/.idea/.gitignore | 8 - CPU_version/svo_msgs/.idea/misc.xml | 4 - CPU_version/svo_msgs/.idea/modules.xml | 8 - CPU_version/svo_msgs/.idea/svo_msgs.iml | 2 - CPU_version/svo_msgs/.idea/vcs.xml | 6 - CPU_version/svo_msgs/CMakeLists.txt | 33 - CPU_version/svo_msgs/msg/DenseInput.msg | 6 - CPU_version/svo_msgs/msg/Feature.msg | 5 - CPU_version/svo_msgs/msg/Info.msg | 6 - CPU_version/svo_msgs/msg/NbvTrajectory.msg | 2 - CPU_version/svo_msgs/package.xml | 19 - CPU_version/vio_svo/.idea/.gitignore | 8 - CPU_version/vio_svo/.idea/misc.xml | 4 - CPU_version/vio_svo/.idea/modules.xml | 8 - CPU_version/vio_svo/.idea/svo_ros.iml | 2 - CPU_version/vio_svo/.idea/vcs.xml | 6 - CPU_version/vio_svo/CMakeLists.txt | 90 - .../vio_svo/include/vio_svo/visualizer.h | 73 - CPU_version/vio_svo/launch/Px30.launch | 22 - CPU_version/vio_svo/launch/live.launch | 16 - CPU_version/vio_svo/launch/test.launch | 22 - CPU_version/vio_svo/launch/unity.launch | 22 - CPU_version/vio_svo/msg/Info.msg | 6 - CPU_version/vio_svo/package.xml | 43 - CPU_version/vio_svo/param/camera_atan.yaml | 8 - CPU_version/vio_svo/param/camera_pinhole.yaml | 11 - CPU_version/vio_svo/param/px30.yaml | 8 - CPU_version/vio_svo/param/unity.yaml | 8 - CPU_version/vio_svo/param/vo_accurate.yaml | 4 - CPU_version/vio_svo/param/vo_fast.yaml | 13 - CPU_version/vio_svo/rqt.perspective | 293 --- CPU_version/vio_svo/rviz_config.rviz | 153 -- CPU_version/vio_svo/src/visualizer.cpp | 127 -- CPU_version/vio_svo/src/vo_node.cpp | 148 -- GPU_version/vio/include/vio/reprojector.h | 10 +- GPU_version/vio/kernel/freak.cl | 129 ++ GPU_version/vio/kernel/integral_image.cl | 14 + GPU_version/vio/src/cl_class.cpp | 4 +- GPU_version/vio/src/frame_handler_mono.cpp | 1 + GPU_version/vio/src/reprojector.cpp | 234 ++- 133 files changed, 378 insertions(+), 14079 deletions(-) delete mode 100755 CPU_version/Forster2014ICRA.pdf delete mode 100755 CPU_version/LICENCE delete mode 100755 CPU_version/README.md delete mode 100644 CPU_version/__init__.py delete mode 100644 CPU_version/svo/.idea/.gitignore delete mode 100644 CPU_version/svo/.idea/misc.xml delete mode 100644 CPU_version/svo/.idea/modules.xml delete mode 100644 CPU_version/svo/.idea/svo.iml delete mode 100644 CPU_version/svo/.idea/vcs.xml delete mode 100644 CPU_version/svo/CMakeLists.txt delete mode 100644 CPU_version/svo/CMakeModules/FindEigen.cmake delete mode 100644 CPU_version/svo/CMakeModules/FindG2O.cmake delete mode 100644 CPU_version/svo/Doxyfile delete mode 100644 CPU_version/svo/doc/.gitignore delete mode 100644 CPU_version/svo/doc/notation.ipe delete mode 100644 CPU_version/svo/doc/notation.pdf delete mode 100644 CPU_version/svo/doc/notation.png delete mode 100644 CPU_version/svo/include/svo/bundle_adjustment.h delete mode 100644 CPU_version/svo/include/svo/config.h delete mode 100644 CPU_version/svo/include/svo/depth_filter.h delete mode 100644 CPU_version/svo/include/svo/feature.h delete mode 100644 CPU_version/svo/include/svo/feature_alignment.h delete mode 100644 CPU_version/svo/include/svo/feature_detection.h delete mode 100644 CPU_version/svo/include/svo/frame.h delete mode 100644 CPU_version/svo/include/svo/frame_handler_base.h delete mode 100644 CPU_version/svo/include/svo/frame_handler_mono.h delete mode 100644 CPU_version/svo/include/svo/global.h delete mode 100644 CPU_version/svo/include/svo/imu_integration.h delete mode 100644 CPU_version/svo/include/svo/initialization.h delete mode 100644 CPU_version/svo/include/svo/map.h delete mode 100644 CPU_version/svo/include/svo/matcher.h delete mode 100644 CPU_version/svo/include/svo/point.h delete mode 100644 CPU_version/svo/include/svo/pose_optimizer.h delete mode 100644 CPU_version/svo/include/svo/reprojector.h delete mode 100644 CPU_version/svo/include/svo/sparse_img_align.h delete mode 100644 CPU_version/svo/include/svo/svoVisionFactor.h delete mode 100644 CPU_version/svo/package.xml delete mode 100644 CPU_version/svo/src/bundle_adjustment.cpp delete mode 100644 CPU_version/svo/src/config.cpp delete mode 100644 CPU_version/svo/src/depth_filter.cpp delete mode 100644 CPU_version/svo/src/feature_alignment.cpp delete mode 100644 CPU_version/svo/src/feature_detection.cpp delete mode 100644 CPU_version/svo/src/frame.cpp delete mode 100644 CPU_version/svo/src/frame_handler_base.cpp delete mode 100644 CPU_version/svo/src/frame_handler_mono.cpp delete mode 100644 CPU_version/svo/src/imu_integration.cpp delete mode 100644 CPU_version/svo/src/initialization.cpp delete mode 100644 CPU_version/svo/src/map.cpp delete mode 100644 CPU_version/svo/src/matcher.cpp delete mode 100644 CPU_version/svo/src/point.cpp delete mode 100644 CPU_version/svo/src/pose_optimizer.cpp delete mode 100644 CPU_version/svo/src/reprojector.cpp delete mode 100644 CPU_version/svo/src/sparse_img_align.cpp delete mode 100644 CPU_version/svo/test/README.md delete mode 100644 CPU_version/svo/test/benchmark.csv delete mode 100644 CPU_version/svo/test/data/.gitignore delete mode 100644 CPU_version/svo/test/results/.gitignore delete mode 100644 CPU_version/svo/test/test_depth_filter.cpp delete mode 100644 CPU_version/svo/test/test_feature_alignment.cpp delete mode 100644 CPU_version/svo/test/test_feature_detection.cpp delete mode 100644 CPU_version/svo/test/test_matcher.cpp delete mode 100644 CPU_version/svo/test/test_pipeline.cpp delete mode 100644 CPU_version/svo/test/test_pose_optimizer.cpp delete mode 100644 CPU_version/svo/test/test_sparse_img_align.cpp delete mode 100644 CPU_version/svo/test/test_utils.h delete mode 100644 CPU_version/svo_analysis/.gitignore delete mode 100644 CPU_version/svo_analysis/CMakeLists.txt delete mode 100644 CPU_version/svo_analysis/README.md delete mode 100644 CPU_version/svo_analysis/__init__.py delete mode 100644 CPU_version/svo_analysis/comparisons/speed.yaml delete mode 100644 CPU_version/svo_analysis/comparisons/textures.yaml delete mode 100644 CPU_version/svo_analysis/experiments/.gitignore delete mode 100644 CPU_version/svo_analysis/package.xml delete mode 100644 CPU_version/svo_analysis/results/.gitignore delete mode 100644 CPU_version/svo_analysis/scripts/__init__.py delete mode 100755 CPU_version/svo_analysis/scripts/benchmark.py delete mode 100755 CPU_version/svo_analysis/scripts/compare_results.py delete mode 100755 CPU_version/svo_analysis/scripts/comparison.py delete mode 100755 CPU_version/svo_analysis/scripts/evaluate.py delete mode 100644 CPU_version/svo_analysis/setup.py delete mode 100644 CPU_version/svo_analysis/src/__init__.py delete mode 100644 CPU_version/svo_analysis/src/svo_analysis/__init__.py delete mode 100644 CPU_version/svo_analysis/src/svo_analysis/analyse_dataset.py delete mode 100755 CPU_version/svo_analysis/src/svo_analysis/analyse_depth.py delete mode 100755 CPU_version/svo_analysis/src/svo_analysis/analyse_logs.py delete mode 100755 CPU_version/svo_analysis/src/svo_analysis/analyse_timing.py delete mode 100755 CPU_version/svo_analysis/src/svo_analysis/analyse_trajectory.py delete mode 100644 CPU_version/svo_analysis/src/svo_analysis/filter_groundtruth_smooth.py delete mode 100644 CPU_version/svo_analysis/src/svo_analysis/hand_eye_calib.py delete mode 100644 CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/__init__.py delete mode 100755 CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/associate.py delete mode 100755 CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/evaluate_ate.py delete mode 100755 CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/evaluate_rpe.py delete mode 100644 CPU_version/svo_msgs/.idea/.gitignore delete mode 100644 CPU_version/svo_msgs/.idea/misc.xml delete mode 100644 CPU_version/svo_msgs/.idea/modules.xml delete mode 100644 CPU_version/svo_msgs/.idea/svo_msgs.iml delete mode 100644 CPU_version/svo_msgs/.idea/vcs.xml delete mode 100644 CPU_version/svo_msgs/CMakeLists.txt delete mode 100644 CPU_version/svo_msgs/msg/DenseInput.msg delete mode 100644 CPU_version/svo_msgs/msg/Feature.msg delete mode 100644 CPU_version/svo_msgs/msg/Info.msg delete mode 100644 CPU_version/svo_msgs/msg/NbvTrajectory.msg delete mode 100644 CPU_version/svo_msgs/package.xml delete mode 100644 CPU_version/vio_svo/.idea/.gitignore delete mode 100644 CPU_version/vio_svo/.idea/misc.xml delete mode 100644 CPU_version/vio_svo/.idea/modules.xml delete mode 100644 CPU_version/vio_svo/.idea/svo_ros.iml delete mode 100644 CPU_version/vio_svo/.idea/vcs.xml delete mode 100644 CPU_version/vio_svo/CMakeLists.txt delete mode 100644 CPU_version/vio_svo/include/vio_svo/visualizer.h delete mode 100644 CPU_version/vio_svo/launch/Px30.launch delete mode 100644 CPU_version/vio_svo/launch/live.launch delete mode 100644 CPU_version/vio_svo/launch/test.launch delete mode 100644 CPU_version/vio_svo/launch/unity.launch delete mode 100644 CPU_version/vio_svo/msg/Info.msg delete mode 100644 CPU_version/vio_svo/package.xml delete mode 100644 CPU_version/vio_svo/param/camera_atan.yaml delete mode 100644 CPU_version/vio_svo/param/camera_pinhole.yaml delete mode 100644 CPU_version/vio_svo/param/px30.yaml delete mode 100644 CPU_version/vio_svo/param/unity.yaml delete mode 100644 CPU_version/vio_svo/param/vo_accurate.yaml delete mode 100644 CPU_version/vio_svo/param/vo_fast.yaml delete mode 100644 CPU_version/vio_svo/rqt.perspective delete mode 100644 CPU_version/vio_svo/rviz_config.rviz delete mode 100644 CPU_version/vio_svo/src/visualizer.cpp delete mode 100644 CPU_version/vio_svo/src/vo_node.cpp create mode 100644 GPU_version/vio/kernel/freak.cl create mode 100644 GPU_version/vio/kernel/integral_image.cl diff --git a/CPU_version/Forster2014ICRA.pdf b/CPU_version/Forster2014ICRA.pdf deleted file mode 100755 index 9567178028f06f0ec44135b5cca6f32241222f6b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1469859 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

$Y#kbE)r+O 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�dq_33=;_VBQxjtfyO56_CA1f!!N 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

@n-nJ!yJuUVIu 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

5gpfilDPfeCsr#<1kNNVR24B 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

ujz+V^yTPam$YKVp>TJE^pN6d_>lMxPM*Tz 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%0AMW2 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

n+1X}Y99lsD{ zi=S!7Q%GpE9y!e*ndlQ5;LsSjBC_M{H(Eaj-5j>S>UtVW7+#A()R_n=-%~l28X}UP zoI^5kr9Cm!II#i^O%l--doFPL%meVc$yRsm9>DsNqU;J)qejs^F$=Wy!SUhBJuu@6 z0hY&k*eWNMIC>60{^(#X6my8jq{M0&lS3QchH&3f96F{oBulp9MLz~T2yalG515DL zuneA9Bb{MsDrt&*Y7p-k`X6AuNlj>(9wO%PUfqYyoppB3`gvg#68$KJ*tcH^yzQ}o zv2FvS4hdYh_-N2Usbw_J{6)!8uZ zP$*YerjdZ3j>+H*qZlFWkV#tQg3&)~lT)}!W-G;JT--D|YXAk`^s zyaaXhIVAgI%u8`eY7Qh@jLtnOHZXwFW*Ykg6IBn!6#5&wK4jU9Bnk_IMp6{2D5j4% znT3h!yw32O*Z?N`ZbCLfT6;i}+AnhpwxZIB*hlM7+vR_5udh5H`yr&Vv$7Xr%PtwtM@GFb4S&-z8p zlpS>TwQy?v(X&kP9B=(+2!b{`1Os>`joB!A?*ZxQ4R5q} zG4>pi#U5al1VOJJ-_X60EA4Rv<@rxNkR7XQm2;jLjg1LdFqkLg~silRRpCF6riI7?3#pbjt;4oA}b(!9P8)h|J2_Y zn+Dht#Y3YEScy~Xhsj}+ysM*>a%K!*9vb zx&YqArt6n$`y1qTi9OO;3HNX^B^L9ryIk!b-8azmtXm}+`?#ADFBXL9MB3fHM*t>X zv#$=L)b=oJUBLUTp23b%7gt6|(LxT6M2pl9(fts#jRV-}eD;A6VY*;{ezU(x#AeL5 zD)p0Fw)>GN=>WsBA5s2pHt7Ob&kA~nBZXDSVXjyFo;7Ir$$Yd>>&BtUQEllHzF%Ae zs+&lfiZywkcRK|}tfL(4R#BQ%ghL*tYri>ihL^TvF3LLU-ya1s zvb3cIAHV&=zof822}eF`?y(l`)#;L{p8rqs9_`!xV<8neW8?-Trc^Jbx~BLs{2l$k zu)=SNTKJ;H3F!s}03!Od&cGgMvw?o9`K4i;P>E1b*SoidP|;@ z;~Y0VCBfy}Mj#Tgph1qP{3jjn`aBgT;;GZq_qouS^ixY8Iw)Vdf%1-yjZQ0kN$sWi z@L<4&lFIh9I-N1EIR47_xey1ytNo9q=JlN10v)ph^bv`jJl{|63yU^&Yt(3>GgK^7 zSI_+#Hm{4+k=2A8zZ;GF(ED0VESJzMDs`L8IOJO1ABkT`d1)Zz{^XN2Y42&3<=o!? z0xv7Z_!BMMo07+onWwFO4gyJ^sQ*D4iIFpv(byLAvrG;)E3WDR<*$NRC6Ij%0iZ== z$+G$Dc=czS0n&m`AAv6kK2?)DA>9!o-Y2MbNe)Z<`Pc*(iycn_;9b{mXlgn5Y14*t zp>smH$0@11Ed!H`pOK=TO>ua1BnEX?QJ`whR~u`w_YGfzg4t1-Z##D3h&&fNyY5ko)3BcI7XuI=Q_O7!B(#-Hd`={C{=Zt=M3H;g#2j7+Y^nrJ%ZlAj0~}mLg&X1O&*AlUP)rR z1)+#O{ZNdmE^)*&RqY0i^Y40gT&gR~IYD$q#-)|Yrz1IMOHY*?a!ymdXd6pxe!UJ3 zgXZ&mbB2L&U#S_9Kb>Kz<}HPJ`QC`_q;nX2=~JU8!kgMJA8beDOR9}uR`<12521*1 zFU)Q6%o{xIQ1rLl7DT=m5}6Tm``;--fIzFZsUJixWS-%F*gEw^t=nDUvx-e7j=~Uj zW_OavA!wJX^;rK%>gB?@d>IP6G78{UC?81pu3K)j@_ox+y_ZKVog*}Zc`x2OI(jFm zw;bn7GMiD%VnS9XCTkA}$cIj6`UT;Km48pcT^v(eNnJ{ztsC?R^Zz0=X@3lyvzk(b z6LZLdVsJEQE;|@!%=R?!un8eV(2Pf_*!dwr-@Sxo-=D)&;N^Xy9Qz$pN6-&AmhoZ_-FA$RBF9D?b+frW6=T-D>WlG@0jwmhm1{8=)}_!1rH_C`VWr z219Kuv(!SSG+nQrKAPY{XWz^z6S5%A(E`N{eoHA1EXmj?6i#jk1*L3v-GS0)K4m|) z4uh!NN4!-kYRB0=r;S zil#As#@!7sFNHimfAW!#=nrZ8`&oilE9_}6=t;@Q+xVN@-Pj9+7vVmZv}|ml5I6A#z;Z z;^SEV?{jFSbp}Qu($_#FT7I8ul2=p8w|cIrN?Ss8_LmacuB=MT(G8+?Yzwa*#wQq%>{?o94XsWu|^Y zaF^Tg$>oP*&%Hgrq52;T$FF7AE|cAY?!z$XP+GhlD^8_>d07A7}h@q2ZUpu@^0)<X4fkezZMOahnacKpM*ms5V)PtbwQgAl(|%$Hh1GziIc8EPbFqsgTeS4bz_Fzx z0(U1D{zWCs{*1r|&{2lEg+vu!!a-c@;>t!PhoBrAxX3Q%@nSgxrPbEgopPaQ_2+)9 zDCWJken{$KFQUu>T2BByUDCe=AOGkG&G!yQVP@LQcqX8C6%qplV?d|I-W$iW31()j zv{s?Q5JFSdiY6(qqUV#g?*A~OK&`%2?h0B=k>^H1Njon^yGykPsAo6@g5f=vYYd)Ez8p%n<65osk+$7fvj_ zcYU!GNdisYv#Ule|DagO`s~t}VxE~r^Rs#@jqXQj%3hgm-Za%d;}wHme;%sW?>dGY z%S>o0h_x2grX3lj7Gz7D1T$uQFI{*t~3opQ0&H+UF@*D%O2XVrOy!qHtcq;DCp zBJPC5oR-E&hm}B@Jmkbz{|58}Q|v07QvBZ5LH{cAmX2Bilt$CUuF(4+NHpQs04Y}*rs`sk<7m&B-nicw!~)|6yAIK+jvorbYa0L1MgIOWhPXyT(D zlm+$UYyTiek)l6pa{sFX(82Ed|B*QbHjJ`g^J^R#jql>rptI$$_Y>2=t)UQJiN zm5$(?on@&=M_}U)o|vNTfzuM_ATofuzYff&JboqdIpGXJy0-i%$06xa(*m|p8IM0~wddff5-IY?*0-j~wke;Lz79Lc4?*7KqRSq# z?Q@SYKLABo`9z!F3~R_XJ=x4gyS$&TQ!qYcbtWsj#!SkME1W5%1rYv&E?Vv_g|YKT zFkLa4O$rK>*Xv()GS%A7r$6$nbfe1=C%EOEb{(w#VxDvAa#BBJ=|{TlHy7pkq#u@g zu{@xb^l3I@W)}DSDsq5L*`p(F!llC+!JKZ;6u-K4n%%)jeSyNOck_MwaLz82LKHgN z8FphBJGJ=%)uK?i_XYg_KAE*`ysUs-ij%54Q74EnmP}!lW|JLMb9y8wk8q($%JAM_ zjQMOkPtyTet!HtoYA(IqFy4$P-}R()p1wxoh#@^=Tp!Yc!I&$#UHx(M6cmW($DJ7 z>XTRd$qo(KC_6W|)y0A5omaaNZ`CV&oMUy**Db=>x>lc$B0#0bDCXdgi>TSKFH?AC z&))51i{WmAay?NhK>>N$D-`ZtYcu7KVxv_|H2fnU_7Qx9MX!D^Y}&)T&I` zmpW2a1OnQS9vY#Qa6OL43U&UTXQ)0p<(_5~hr&jX92%1UKu5Jy{VwUxFsSgrR_Caq zeB;B=?VEnl$~yli zNooo!+I5cfJEIvdexPonY+DJYW}u_E&@j4LLP%MDN7Hl3ru~hnHo9nTmWx(kQee|;b^s~x4avDD&eP2oko4fQwfkMb{)*YeK z6fShsbU>c&yTmH^V{PdVj9h4UwSHuxM}b!eY(sDnh5T1tRl+CP1KIL{L?A6GGj5h8Bk#rEweBWbK3-;XPA3R?;oKj5#o=U4Bgs>9 zVBT8f5dIG$a-z&V065nJq~EJU zJ&M_>n1yGnXt?`w-GwTLpPY0vr`cMfva1zm`w*W5ZAjL9SWU7fBzZj`=$ataIn~T*ynx^ zanXLb99_6**YS_rrlg}HiL<3njTg7$Pc2OkylZcsM?SsQhd($n{F7X4o^F2owVbGw zlK8spdajdHcO@DjQ>?3PXM%XB#%9iOcTZ1M>bB>+WT2Jqz?!O`sV{l*Tux%^{^pmf zJ6*Vp6XV-Y&p@$ez>CQG)lP6f?fM51?EuH_jBcgJV0!Y&{K|S)3{%l=WM0f4_}Tpt>Myi0--^<86?G3OrxeJ`VL!& zgv3^}&*r5vC8xi$_&6JTyR=l%dw;z|TCIQWe><5clDnNNA3amfD|p&AxpP%a z0WGZr)@E-MZI13-iEIYT-ELanA9?I_XF9*kRFWVg2(NL5z4`|+X(GsPMx>oUOr$l! zp5fyMC{b?qJ){s8;fyxcNd;^&+nj(zBIi?qc7Gj(n{_9f2afN4!zk?5HS5nvx~N^S z_f-MKzoHoHQ|Q=ha%w&+__@JYR*0MC)5S~e!}`+|so$qihYyf^u_J5`@CAvihQ~xR;#fa}|CV}OSx#8{?&YC3EwKYqK_Lx8x3sA4)&#N|wvo zVeOp6{#n~Dr^50N$|SjUM#Gi(iY2j$$8;x3R; z*9HTLaRmzZ$MDD*AP2f^-xjo^(7b;8!!#>kvHy>~>kMluTe}INNGQ@fQbR8ZDG+** z-ixS!O79@OiZtm(iXtLanxJ4qr3)e;B3%)X4hl$@4x--aABQdD9SBN;dz~Nbu$ZP~ZlL2Bb#>oSP{I@Y`{>K7-z{?NeO>&upGq zUB@jpHCPSewkG$KryBL7ISJ$ts>A5nnLu5spJW?=ZFFifK(PiMKntC)+|ygrJJ6q z<7U;40y}r#04=`fk73x2CggmIH^7ozLE6qv3G{x&xe+E)LWqLTK1pR7?oLiOX$lM2 zeI*ki7d@8xNdZ_G*X(iOdB?|NpFy|Z%5ec5BV6eHpwz6>b``uOJdf297xulnAKUIh zKLl=V6>U)u+eLwzR`}WZ{0f1kqCgTd1cs0dc3Q2_tr9SIF3E)k8qmIJoIDW(1x|H( zQ44H;;jF0k$eG0*xN#%-_mQr)(!MD0+!1D2#br{@55UeyhnwTuOMoZ>n67;>Dl1_J z79;&Z8$~)>i^?mkv;}7OF_th1pzK}W!DzBRT}oR>PaC^-H@mG_Ha9WY(8uY@@C*0% z4)J#-h;$h7QotFj)9|~m=jUL#)Su#H_|DuiC(;Dp4q6%z>)!5cJO9t|(#>zQ8JToy|t4DNp(v4oD zY6uaAhy|^&>ZnqgPP|zHKE!>Zj^ZJ@>0Q9Xt-Oz{XAY4DHk73)2kFw4H_!unfgf8n ze6)Eh+`UE8HU&?Hn4bT`ZQ;3%QhD!ej!0DOn6-UvVl0s(D0Wkoz8@q7u6aFR0Q8&> zCe(EcsqOCR5nb7Cx>oPM(`5ph-k?%o;9b%q%+A(SCbmkg^!{iMQCWv@TgL;F5jvuY zbW+)mNOcpQ&mih(*aPBP@!FHE5#$m(Q5vAPsL4}T{Dq?>x`6ojVqxgJ;T4Iqz|w_$ zrQXxeFILUT(^sruMnnk3y?}FyZG$?2Rg)=)LLQojfMdQ}wum01z&bmzi$iK%W_kp`_QxO>US6Qz#aO?tk_PNbZpk<^FW=MR zB)1AI7K4X6bQAkzRh}uEiJPtwSp8vvZFSER82(J4&gh(qM>4Zuw1LiWH=$2XlNym$ z29OH%6uJuZAs>eXEA)qOS96~-H3xcRRf{}ts^^%11}>!nrk*ns;=p4Mk<#ULe;2~* z3M`67^m!0!<7(~cE-WcBdYFVVP^vsRXXc@ z*2B=v!pcVUsEv<T)o&OprR@c&R#YiqAJc7UN*qGx@WC{^ZxRvXW`-E3B0MEhmEy^mDgDhb_Dv% zdwRRLdVV>*tgNV(jjJ8-W=O0ATvqn$C-=)-d<6!B;D;L67ukmBx0&RLHwi)8rrLP& zJ=`E};Gy@QhkqdWhXwx(gnw+oKj!cskMNH-{Kp&q;|>4uhW~iOf4t#8-tZr9`2XV# z1H7UgWe!Rxpnpv$92ET<;W7*-bS)iith}J#Qw}O;JzRin0q_&|JUap^s%_!r;o!$^ ziU3XrXaDl^6p&+3JnLtQMx(GI5@JvcQbJq=B?d*K#gQW7Sl}277eOI_m#KQ3^>$-N zAW^`-8hpzlAjE!5A|$+Mgg${&T$tFCZkASXyf>n~Ib37zxdMg?P?4mB-#&Yn-EVCZ zNje5s)jutjox~TDf&Os!Q9|=TZqbLn9Ni`|yK)9weltn(g?8vGAr2{R4dQH!y7#(X zudhQTJAp5M%UcV6kLAHX2r%4-{F;IJNr0hH2s8l9cfe36Bvu3| z@mB$>0|29GUfq{&4hnmDZO=l?m)@C>EjO3*E<5A7eZn}UN3Ox-QDgAC3^Giz6lrQc zn4+!z^0tyE!`81K>o!x1o4~bF>|G`FuhHMQM_}Wj&Obc>JJyzW=96YKD`I*<=M20K zV=lzXH}#f6&#f6cE(sew2r%SN2kbk;#3bM%VyIskCMJOt5kvkr40~@|b8Y$$7#7EL zn^pIQeF2PGc5@RU#r#4$cz4aAa^eMT)2*wTt)W3DEz(d0iWg5R_G*hUYd%}8L77n~ z@h_cI@cRwJCi`IH2LUGb(*gU=u&;o9XV_l@>~{?7v0f4xAeEI@P_|SM+ukMAjB@>j zVfPtEm`4GIVVL@yoL)~GS-5)4julUa3YIb0s#l;gZwLz-4Tg#NYq6-zrIb#0i|!e? zE0JPr`iQi;$kH{4o_l>F;j0`c8F&e+J_sZ z9}=MnFBEV?^1{S^=42K-+W+bm>ybM1`zs&<+8BbiC-bI4G}WG4I2-0)I4m`)cUvKS z_U(fQ&Cb2@`A2rQ9Q?)wNFvqmzhLE^Tf-A8(Num>Jp1ezrah@vxU=XDUg1KV%+)F0}I zrVC5U%PaSX6s+uu5RypMT(R)0KKasrWaUEa=6Ykq#k!^z^N6T<-C$W-@yx30*Sx3i zO*FWiwBX6sVh}swaW>`ZyO$zkg_B{jZ&@1YFKn@?TWfz=;?ml*b^ z?Az+mnUvx8~0rTS(sDn_rT zR%(_i`S53IHj_2Jb#6H41GF*jK>56YQ@6CWQkG zN3grRNp+)9w}yh)jguh^DHJqHddc&qPYc{;mh2enU2PEoM(5atASY2pTchRqhM`q$ zdBHhhysj13uh|q7UN5e`rDsF(e7dfc{jPdxiek;jD`8TRNhwl6jq5|9{Nn7oR}AG_ zXqkufU{4ML?1!?>PZAa17>358B}6dT?+im@F$fWi#9v_;X~e{SmLjhkr(jAMHjrbr z8-hP%Ff6~?J3L_sysKk5_#unZ-LhBe3xe`w2lID`};=HZiTcXLRZrw zvxn{}qSe)O-uDxA))YwkJzF&saE)#piI)Wy32r#ylN*2KaYz_3^Yq1o8HV}W81@aY zZw&j3fc=(Xss&#eMrB14u0Jua`m{jp$`^)NA_9yTDAGa~EVXXmKlO!SfDI!cS*pmp z#@%byW0)n5Q(^a}gT@EAkE!RKs@H6UD5~`h%txWbM9_aM^AQq1y2yA0c{rQ`e=n%Hu3`FI{ryvYT%mE& zApRK6unT4@K|*}jz2;PI4$kq=71}iuTC5i6UzMddRZ}5(X>@+ui>}tKn0ACa=3OlF zEB^>b8hX#Za9_K*8aEH7p=I#02PU6YYgw@S3LW46%JE$Dr{Ia%12wDI&lmYX6of+y zjfG=G&|ik*7qrk=BwPe7{)fZycY*>z4hRZJ_ek*yac@D+=RP@K)$5EB@-X=uMv9D; zvXrcPk6hDi9=mE>uRUJNp&sDa{}kB$6~#b*qh#U3+56+6g2%m5NizjG=W7+wn$L7L z>=o+NKdV@F51$ub2Sy_sx2(9i5E1PIE+XtDizd_<7QE(9q5JY}s7ZQaO z!2mJRpRr5)ckBX!NF2NB8z#=xHwIoyG>vz2ch-z^*#D4THo3A6|Mh)T^~Pw8nazWJc@J+(FoBixgh4Y zui_=|?2Ka<9ePyYv|i6qX02`Mdt3RQ5mj@#pPY?{-6tYl`;#@5txsXnH~H19Jl4&t z)W=k;?&R&4t8v)*)^nU=X)t2aE9yHV-^eJ{uL-+#5MFz*@ZwLM6js8 z$}TBrxIB&WUQO(yupaT{)VmMqy<&yr)fC}jS`(YB6^G_}Sw&{DZ2?nH=Zp)ukwsn2 znmFS3%fpj{4;iCW71drt#uD(ml`R5&yVbyRq9+i zr?f2*Qi96WDh8AU(&r^Jtl$8=5I7bT>*qt}Y4r zSzf0d;nVSKj(A_o>A#s&Hpd@Xw{AKRUbI=m6G*I%U<02kmIPZf6)vq;H(ev^Hlp6RfRe6BEzjOK9Nc`f86=fMj} zr^N~MWd&rD*k#a;iT{d{GQ!l2MN3GvM}0>^*=1JZ?m<{E!X zuP;KCV9z&JCUoJ|d7#3V0vxu<{N7Rw~XzK{R&_3_y zYYYf`vJs(}wAk$T_Y_V=bjz!`@qhD;1>AHg z-GAa62dH5c2jGSL`J)kuKmrvZ3>KGz03Oj|B5<6@mq3ePe#m-B;6%-@l_3QDM{Z>u z*Se0A<+ zj*RyI43hAYvWY`-*mpEvP3Ex7plo*&ZF}N6avCaJeCY7z^R%ONnPit{>w6!Z*A5PshR~ za?<~Exc-!w1XWb?|{LwWvS8Nwxt#H7?^p zY^eYIxfqXWWV$~ae_>FRCLM*y(d$*)$cO7UY@Z^jVOAw1yOxheQ>wI2k$8w@_RFG-7IiQ$ zALhVw%N+x~`5Ba5&Uf?iNZ-2lq*PrQL3u1Y7x3{1OL`qqEefD=4 zyeMeGRl=`lhsqdw`d(A?gczCEvn-q05a##jn-5EyEjJ$QR&pj=98SgDpO~myU#FD5 z{E9<{Ze65jFL0KXl`8`pwSF(@_R+4})2tu)gjfX(KhW=9*7)dlSWYjMu6q1<;U^lW zh^>{r6XSeup`UauRhz3mEj-)I`Fz)H6jg!T zu-BD5FO%sT736pLeqy;?w%Q=iK>ZnM`(+2p{@!Hz#S)|Rd)gzZF7g{O0@@7LmA$f# z=Z4Nd8hiL=pYt4g`Mqb7y!UaFTLj0}1qqTqP%gEp=4x0f^51&otQZ z@%*%x&N)5LmND|?yh=v#jWe2>C8S#gVxSJO5jVv^DcVBe&qFM_>Pg5A(ZzSdbtaYk zNdnSlBwBXhB`k?NJ>;hM>=82+|D4Y7WE?$X>@1(Y~ln& z;})Mrcwno2bZ+m;y?#}4Y>LFmUg9&DpbsH-fF(ry4KX_!$Z){Lq2fp}I4<@?qcJF4 zsR=j+{O=zZF@Kj4k^)L5G!YY@ZcUb(i+P?&eK{9l4W*~hOGdC8R_@;j4apkmnppAn zq{??{qE5NcR(CvLA?q^NvGi*n*S8Gao30vr-CwUj9d&GnB41M^+=CPCtJyLsy=XOX z2S-`B71L9V_?ioy&5g%JRm9Al&ag`d;q~)lb`(+^ErLLN#|tQuV@2Q+{}WzYh})8N zNm>(lcmiUC*3d_6Xo@@c_pmJW7Pe$wi++kHBP?I2T&zotDUPHF|Fpi<=LXPJPpzm>BIjb^1fF~0Q#DaIfY+_FxrqQ?vBbmkznRAkQco3?`t)bXp%sF!0>=o6^@x#i-CFIDo63NOF+?XkISEJ&Dzr)3RI16Bh{1O8$ zv;xO_6TSD_A-R!$2iyZakYezkAGrfHre91L0+-arRWZMsFa#X??~>ZTqnH#Re!mpu z5WH^v7f(rf2XIe@L5|{G(BhsBo2QQEo1HzMpfU#EyHV>UO%X(j5{%iZ^MpPjL?_7Y z@1V@wCu1!VBQ&G#hzc4BWA$xCo7G3TUvV$*ijdjiiznKid$RTrVmJ~a$@&RTAkh!p z#R*G4z=py9hS2>R#l8aeonn6m*l#KJz3dBAF?}EOYLt!;In!c8IEWPx__S5^+N6v z)9V)QTbSNMq}T;vm?wX^`hi{#VFBrR2D@<(Vn07#_(m}d7O?h6T;1d=#o%zDobs2- zm|qIz0Aj~Y7XJ{j!8jaZt5nZ~Q~@hyY3`_JxbuBbwpDn+0kdDK+^P|C^^{0W0n?zn zTasr5tQajdrt1#l8Xdonn6m*dJ5uxQRny*&k4B zQ1g0VEAu2Q$uVYKQnIz-WfH0lXe}T+Z067m*UT#nFA){IK0RGq{NhFVfQT}})2y>_ zB69qN(HungHx%oYJg^u5|M?;OcZx}1#YDsq-zkQXzyc+@Kdj9C&WQauCjUPemKIkz z?W>NyH{~TlCXRnRmN962&L3no5-NEbuwp#U1JSUj2QlpDm*&0+F#w-0czt8opW*e# z1bgsr2zC|L1B^%u;sO)Sy2MU|pQBpFG_YlLBvE;VWqM(E@5C?cwr;}c>yT?Z+KxOaJC=&ha>V|ItzeWxsq?r6JE8{j~{iBzbTcUhp?8q zYCXI)^EyG{(pIcEw_3r;ob91qe&sGkM}eqMR<_b^Z^K+KWg7w+Te=%29;XKnEi2j= z1?||nK4!k&J{Zr2FDu@tmyt_4^BA9i{#GA7to$H){S87N1+);LexMf$i4;No&-A)l z!_`B|l1s&IB#=jH_L!2Dg87=w;Mw$WzO!VaYDsGM5v%^wnb&8a=*u}D2X6tjaGc(_|AJm$TMJfq&Z(Let8$9?$#cu|9aR+BmZbw)3r6hGQcXgRwHWEV>oH4K@2qB& zbdrJkN$~d6EuedttmzilmB?ogo$uVDioMH>h+gmYU1hPHdrV@$*PJDKXgSclR7S6O z>P%=X_2|nS*u#IN7Xte?hSvJDC$VeUp3=-owQA2czENVfJ#g#9N=AFDP& z_VWq_EbRCjzMjl0j=Q|iJDv9H8bn~oU5@TOn)NEEhukogwe%gxh}J>Y9)bP&8Xx@? zukZBwir1gg>o={#Kws3?&Xu}`)tv>d<6r3&eVu~eBYD}Ali+&3>0+mj_&u5c4A4h* zv^1#b^;J=3mgZa8+(9NiHbU{~Pms7}j?Gh~(l8lyh0%nA8TbkcTkv(Dgk ziQVotZ!0X-6q_kbtB(V$*QX=V<;xwFTq{8Yk!BEohR;yzVK>mL+Jh=62<*=n_~@^A zedpI#y#6x3zW3d2pW7V#G9H1xyD#JM!`JcX=u@2x>o!}BxFcbpoh{3&x-3+7h-vys z)P2jwRE$?XcZPt_D+eX>1Re~`-znX6?(q$A%%d@q&gokka`3t?`7rG|yjS#8+ zoP%1e5!k;$-oue75d@A;U+othDJ}veegB&J`jKCmLBn8lP{BCoVR?<~IQ#V>=$775 zFR%Pp3n)XQsr+$BLdNXqqjSr{57a9ghSwY9>>8=X%k6mQI5eYam# zYdhpMIv0ohnzHw*N2GV2R1PaFty3>2DqHlNCujt=0bxz!@kIS zRNrvJ%XhRbj*T@b)I`arhv;=fH9wEw=GLr-c6*Y+o;+wa;L{4(JI-pGb97 z&w~kK+Jx!sgd-_rGO;#_T=2e|~s^;)h zfe#=hsxYfV0w03nDi19UleKqx8B)B>pM(%oIrQ_^`*!jNi0Bz&SC;RO$1nqp!|R!X z((|>PZ&}P7ORYUmo6J47_d0#eSJkV@yhRl6OrW`tuwF|$&`w6n+$(=j^oWr7`SSi7 zUf=ok6|X1aho9^~z@WzDsE~zL7Do-uwxO z1+jJ7<$p}K1O)guaB_;bGKB0 z*_1x!w^(mXy`|A}Zzk;HIw*cbNc?<(kHP>B5ty(0%|QbFWN;A)T%qkR3H+A>xe`Ssf< ziM1`|Yn<)W6lBE-Fn{`^SMD>OIaIqGdbdKJQ8$vbCk|#h)nqQ{tT+g_Jas{8<&i#{!DHY~w zeJX9*?DrK4+V`Z=3q}#*b8pfmbKWc`jssI4#M9HLXEh-javuq3%t8CvFx!=$Pjrivb#l!w7Znb9|`tWUF&ixJN_& z(esy%SSVx$YLRvPDRDg198#BYEW&#V8wgE-kXXfm)1tK3BZBn&^k5%QaC0p=pf z%s{&&Z>y!eif9lT%)A105GQmx?Tt|4GOTe8ugT*J!8Wy-cu+v&cb+?_)D0}%`19ww zeFf}0!M+0arv&?L3-OnX^e-9KwYAhA8v0F%ZN_)Wyh0P&(l$O;tD{zpS1-g8W{@S% z_v|r9({pR?_Q|~nlM)&3)|PZDU%9mwc_YY!)A>U1%IBiW~vc06pmjppWk)S?|qXrCNF|EzJv!s09oQE&C2xBmK=uUd?W2aNGSh>SW@ z$2I?^i6o`^nq;Pdsk^)S4kfhr`8BL_6hzq`G9vBcTBzqo%b);!V9CBC3ht=zZVVr;&PkHBjh_E0>u zgg9DOH}#x6W$sQw9-~I8L=$6prT|B42QQz4Dfii;r~Um!sw<+or25pwR7{RIO04y(>pUFGgw4QwDSQdEC*Vn=U2L zbo}xRUC})hoEaX@-TI=1;UR0^guzRdh`NHdNk;VmBji0~DlGT$6S~oWHuJrXlf7y+ zY#j_`G~z|3%I9u%off06QeiaCVo^0s#tbCcSTG~U^UZ>4=&vS?o&DZdl0r>unf@q`N z)}VG-=dgRZB9WR--FG`)XO~+?mYQ`NTa-LjsBrExesIF2UiCsJWk#Rn48(O!@6~du zj>BaWQQdXPEc=!YV7?dJDJR<|pH%}zNepOUNIeOofJamM)dqs3KM??*dc z(38bUXM|NX#*aQVkt7$(^b|g9#y|Nc;67B`p~}6 zl23lzj&IllA6G-Y6Aqyl6N_ZhNI4K@1~H8_MG&d1s7lynwN=}#zVok_HgCcmXXmdp zgh(>Y%6|J?=pRD+fB(6FWsWfDUq2Sm zsDgo`f7-|TK~5O}iv%HY_XB_y1I#zW#Xbf^6Qr@t=*1*`;x`c-Ir z9{9WjB3A&&Vgs@U0bk(HZ$L^QLVN;30(?S30zx7p!b4CBD3q8ON<)5_l!Bgyfq|Ze zj*f{H#>T|V#X?8NF2v5o!^WAMTUp!K+SxledU|>L`1<(=gkOk=jEatl zO-a3UIqgdN)r{-;1%*Y$H%dzH-LH7?@KI$|^^>Nj%`L6Z+Mf6Jy?oXGdSGy9VsdKw z?Yo)Tx%aCd*48&Rx3+h7an}U~L4LU`;OBwY1%Lp?!^el<6XC84jOUBHa7ugv4g?{U zfly-) zLcqYygHVFxK)XdDP!Jy|7w>lu%wg(X8phxT%X9+VrVwDJ@3gCOuiE#QRmKm3Op z?hTZHv#^$cfHwq_frLRcC-CAxS@w4bK=^uKCD5{(4-}sUWC%hFlkyKM0Iy}B8Q_q5 zIbd;7LkMhiL0HoYiZKD{yPqI{Qzd}-G4P`F@QiEm$YZ`PAhQhWq;Q_NyOH+q%taj5 zqQ&)!-3O4m=?WRxBog2o*g5DKURDGD@b545z^nh6fBX>@c>;DE7&!csK)LuRkiHvz z8HnNQ-Dsu*^MUQnIdbt*84M|K_ka{HiGU6)TM@}$1dgQ$FQW$)bU#TCFOvcp+yT!k znS@-rMGw|Cv+TJ+#BhE8DGkWzL*hiNSsCb$AQlHp&u^q-(9 zPt)*~h5SF#41h-W4tm$%PPgz$?5ulxOU|aZ8PoMNpfXJI))~^0y9H4qdqe0# zs4hqHy7EW!gYt*c2_MC~ zF{~tj|0gIOG?M?||9%5AFt!Z<{&7P=VS(*|-aHQZ3ZMGG@(ck{@#~tjJf;I}tcoA( z?=!Z&m!n&M7EZ!vojDabOJ-8YVK(h87rXo5nS~S68%XQpjZa=vy7~B>I-fyLs~_f0 zkDS)pSzx9uEvDgl5tTI{*)!P!?w_cAaCIe zq*n11Z_g4-n$o+Yx?8&X+iWu@I!+EBHopN@2L=XJ5@<4=M4osk34jC`OP2uXIg0SQ z!5M0hGExggP+qi&IbjmomR5*f_ z%kiKNCkTqz3tDJiJ*6p^0tVPccBs#tun=gLE4=yG1zI5sC1ZdA$GAD{LHT-6A234W zHP|7Sw71$E1`;L)=?B__m3-uBx(P5~b-;EN{Uu8Y;C`TK1#SjjI$#@w0P6p0nwdIF zi7i2_>VF@U;ahtXRDHa`*zOoiT_Jd?9Y4WszJ;np;Vw&g@v4t4snD&k z0D8yUw)EIjhLe~ozr(x7Q;I9hNssLb;@Kes%SK1+x@xl4-oLAer!q-Uy~$tuVhm_X zf3Gd*WG(2FM-$~PbllgX)ui0Xo-Fou3L$ngZ}5FAy#&Mh^4!U_6UG$Tm8JUC!wjxn zBaAZdO`Q}??~EVn9Nu@7?_GIUv@23$bN=dcwY-K;FkYganUzAA7tyQ!dprHB&m|=z zZ$)a#6RU?@zW`tc+)ExlP@y@6A&Au;gaR3Wk$?-KM}dO)0LK7;L5Bl^yaI3@{2-rP zywC^)$!H<4t)MZ*rCacV2L1tvL>>m5tSB!`W~LZxkDm+b1}sWpWrLw2slGY%_#FbN z5Ph3U0v>q55?H4})bXZ0honJW2;Um0Ad;`>0^{{@8sOH0uD=H5n?pqa2lmbLmD7+O z;2{5CSRM4r<3HR(C`hq^G=;B{(d1%uMHZIi)R@8%DSF219ieTGXK2=)d<1Q|t6ZB^ z*|H46%@b9RZI_k2V01Q*1P|n-e+K2Wlo`AqxP}$hY|ePK7hLE_l@w5#b^TgVT0Xq6 zCb^M(p=rM;U;gf~BJSkM>DAbqgJd@;QNz>LlhJkF1S9cOEJ*>ttbdb;NP3ysx+hJS zBMBwCq+bpnZI7SgCJpEjyy5hoSnP)KVnmyww(7+7$>xq4Gu%xXcLp;PiRXrtrOI+C>S6wf(jciw+ zA|nXpGJFW~9^P}`>9M63Dvn-{lwgXuJ;hFQg7}I_pD9EA!psz2$B!=+u)`b3Tjr2rUS9 zS)NcCB;sIZks&XP;@}UdKoRA9JhmMsO?}oiX(*`Z!?buB06Q><$+$^Gu$ zdH5)Dt?D3uf!+V=b4U-<`xWc1bi`!u%A4&!3*E`MP?eR`TlG$SjP^mz%8WuUQ5u+I zdd5eNZKdoo`P4lXn=8#Z6ho(rHy>1-AlgcD8FF9nY%BE(erwI^6KEHOZWj*LO5D;- zK8<;ge4ahN_gYF@3Xx%;mYnCncudtm2UI|WDDzuZ>b(c6p;D8JL{w+Q1(LTC-#TY{ zwMpcPErlI;8hdk7i(K%;YGPFhVr|))GG|;1bpC;U7_Vne#zdiI=ZmKsZEdB!uoLke zso}BL=5wRttE5wvD$B~A#gBN{*GHx;9POQcIJ`8kT%8&?tFk0NznxfNZ>U7EnxgwK zpnK7xFc+CgHcZ(UtCn?PEP3s4Ua_0TRNojVu-EcPx!P1t%QY<`J6?vaI=(!AP~-Rv zqz=-ZJ=7U^l}^g9;BwbWZd?A#w9c`nF;aAg^5v!LbnZurjCUS$bZDlS5?q}#VS7?W z)#@}#RC~$%)5^!HUEhz6W?`+qHa0Fc6p8%|lL{@A@+FM6AwS+c{Met5q}xZ7m1ee?E05X}s^PmP3l_ zKZk^(em-X}g8q&!F0n zU=G8DmaO*v&mfiu-sd#!T-aG1_Y<#>%v))^p1L(d=pu%kkD5DK?L(4vB~n&scDFW6 zFlYVbVIMhBV8^_|#=LB+J?;62R;E39nn}J5ofr?ed#AFC`asP6*lq90Q`9<bP=5+C>&-MpHA}+itAyZf>g&v5X8?1$2!tg+md_9Cegh?9&NFOu&lE8SA zJirPx@X6Dp15zggRDg@qzy=`#A$(4Y{|H1w(`v^9JC_0#UtXPDEU zRKymc=eu`5aeZ7bX7p&8t~xQa4VjufCp8)O#>LnpO){1cf1Ud9Dq9roWz8=AV$b`l zj}w>CHEFTERs>-wv_>C3P4`}qyqCyQ9rl!<{fHY}xBqsQa9Ec+3E3b^kfROH29xfM zYlDU%)K7Bhxss9`KiPTf+2R6Fx_AUZS^wz z2gBl*d0F>o3HPA4Mm~7Xsk;gvWo&C;*evytADCp=XbLo%rMExU#cn+nu0ECC zdt1H80=IFohVA;uPX<20HF&s$R&kSbYUkD8{16>5o{u zc(sydvV4K4?Zc4}5kfeK0k7KR9#b{Li6h91CWRIC|#ABLTM<{X~f z;qP?Dab;H^Zf=lTz0>au>~np>C7>{WQG<&^Q(Hk{NPWjGz*D=kAqPIGCXE;1 zwWyi#R)#3bhWQcPVpgrSH*U;aZMyc1JM7hDJ6D>N+lh^v4Ky}1F-i&t#$W)HI0&gDqi z91_~OLQy2S^hSL>~?bVko}iYv7;-hn=!L2mCZr;C+-)Lyxp zRJ<95Z543W>2R_bm|agetNUt_%3(|YMS!_09?@IJ9?i-JVdJE0vzS!XSj|8wS1Vq|x$Nv$Cii9Z4b;g! z)HrIW+sgcVjqTeWW=GVB+sD3e!(@Y|(3cmM;$(;vUm9$-`9A7OC|guTcW}NDt!-kM zrV5xW=v}Z#hw~=SYlj6ryV^wkakj4263Z=Bok%pJ7)0=*pmfMB-*%J<9Ig-6-Y)-@>-&j;`pLGVnFW!2V$&69<1wFaXE6NedzqK5X zeU_O=>Q?oJbi{YjaK{Ln zYW2AHqg>&fQyeoN=avzpT!LDMJP6n%_m^Z0Fs{A`|6d2#VS)YJiR?3^CMbn?{b9mX zRzza)Tz{!l=-SQcUFwZ_)3Q)8`h9-ET-_VZ&!nvbsWr=pk__nU7Gh*z-#|SAdsh0iI1rRGhjKA) zy~}DLVrbT0YVDI3pbrm|noQW@Fw@z;uf0Rlov;RPAu6}mtr9j%c#WSj*gCI%=T0kD zXPYZ`y=1;bNikvy|6-X8@q<=t7p_OQ9kuYih7^ue&JUGh>QRB5q;?hjt5vuJ+B`54L#+JQc)>=WTwX`Skhi_|W#3dJYW{gcqkDvbx(v9D{ z>AmkzO~r&7-)?gae(mt$@lt)TMve`;aMNnIy46EX%?R1yi*J<*7P#Ac&K>V&!5a;j z+0T5rhZPBTuE?R0mKb>PA%3@zTx|BxzrN*b`KTqeq#9A1%IT?v6FK zCy=8&ha%Luo^zSboMSs-;toyR;^16F2b~qe7*#DMU(U&P)2OZ3mXl~ZZ=z?*ChOvv zjidU{8y$^OCp*Kc2Cj&%E5({!yh97yZY;t(YD}-YoWx)1LG~PZ&MMlvsZdQ-p;{qz zIexu(q0p^LWoimG!TYRtqSew`ZsOR2H9gX9yRPh6uqW*;^Z4*PIWxx=PB7m8sK3fx z@NNk;Q{ZmJR&sN<=Hc~ADPqggzLQePkM<0_Iz8`%erzTohaMLzuT?75L1GF68g^d{ z?vvTySzQq4k`1h~F+MDGOJ+D{-nc|X27kJm!ar066Ql!X(TEH!lGIz#3>Ex0bt0R@0a{UjkzuI6^ddERSpOF!Q?mL(wH-Cd$F$FCe^^_i7E@@7(H>JVV_1eyK`IS0NEl zQH{gBhpT!k<{qWVb(Zj)5uf7(;?t;)$NNRia4V!*6XZEWPEYQiZN z0%>@wNgz@xTC1#;-N&(@yT9;;2c<7{Uq+;XkP_+rXE&j0)0v=BdlM3+8@#4Fd18%UZ3y3dd5e)~E+fZbfP7wM`^-cg+QWsceaqp^`C#(P zBHGal!a~B%-LSG+y&JQXpc3*ULy+PTU%bQ`6*Z^vUa@T9=&3O=8WwL5GZde6?YecDGOt z|HlL~JInGn7>l}DRju9i-B+chyBTzJD|9oAY=tK7mcCU2Bh=5gWNP~KD|y{aJJaP7 z(D{UIvV(0id95Z`N_~gCCkp~AYRj=Kl6Sr77p*-`Zx z$*pWAE-j6M-W0A3_|uy+YbEiwH179+g+GLU$b^IsCE8h_Evlw(bIE8M@5b1-^4Tyv z+vqr&|FXDz+JK5)#weJ+%*^Y!{L&^vZ%at382kJh1)rzSOGnX?Hy;Iiyj@J2=?n%2 zUp!2b-Eqx=w%iPF;4P62M>j>6blx&T*}WVncQuGWoBu&J@;@~L_>&<>w2ZHI@1(z| z>tsB88$lIb(t=yYa`QD314FGxPH8fXiLc5yGz>_N1l~TU{(6J`7!O_YuHxY}AQCk0 zY4WwImL7Y$)g@E&;NvpaBVXyyplruXE;{Qs5<*0mGf-eGgymh~&ebu4vgaQ^Wz}_| zr912$?sbQlPk&I=P_G-5?zqMzJY`D3!e%ws8}+=UuqTV=xH{)F#R;Dcv^ctVh|WOX zv&&Iu@|}GeN{lr*>_q$`gqKa{fs?l4yU~R4GG8MBA+NZsCr?$~?s1W$nMX65jMMkZI1g=5k=oI9r2}C%kHCE`#uLVXi3& zi63Yw8oAT!I*Dq46yi!^zqJbAkJxeHdJ&*1vqHY)H?FPUJeU0*`WYnPYwnQ|)u>C>m2>afwbSZ5Y`y@&d6-!G^H&74sI6{_ zEKtU9eFi}bF@h{3uNyB?H8iwtI>iUOZ?4XF$Tfc!?$VUOW;Z4hs*70%kEMSb-a5%WzU_ht8c`e9^*Lbn8wC875=hU|9<6;t41qX zwi`Lz(dGu!8p1e}aXMrjxh(STazb4!BWrc?P{vkheJk>&iA+tZ+uk&9w&yV)+bK^8 z3e(3E1|u=|coSMyB#)UYF5PnV^Dts6tC1welW@tpHdOS2e-JsBCHhqIbV+d|eYBUL zX7nB8yWC+!_e`B2x)l9b=~3@_Hb2P8N7O^J{pE*YN=FX&p`{m?P}CFRVV9=ujdwQM zgA)vH>_VSvuY@;h4Ss6X3n~QmhCjv~_EhW~wGelk@$jS`^3dKOQ;1 zSU0&ZlJn8Au68f=c{KMn+l296ilch=lj)op%{RK03(CNa6K#@kc@%KNQgT0EuJ@t~ z`#q-f1b%+yvSXzegC&9^jtnUUBr&ILXHons3x87rJv+^41~o?=z|( zkJ58KYMVUOXg(2mj(BB9K41S;RLR=$oW31>rVl#fuUamK?1DjI3s6zPPZCy^RQm{PwCFCZ4*yt!Ro@`FcBnL#7Icgi#DGgu9}rC+l*<3tWG7w- zo;;%rA4Je-mHbL!o>Tj?z5$jDaY)Snk@nVcZMEChXeccdiWDmjZE-E`0SZNe7I#W< zclQ=66aoZk3GNyw?o!;L5Zv9}wKw$L@80L^eb4>A-?{&gWUcT=)_R^X#~fqMxyF4N zrp4n%ZJ?&RLoJ1>SuIQ4&Ez}K@5VRcZ;4kB-n;hL`>K`NUOmpiPOUY=J6TRY741$m zlqymyBNs1vSyG+E3`Gi=7mqh4a(Co=s6lXxW=tV@Uyk$PsdR)D5VGp~4B9g$Ygh!H zXiG(PW?@wFEADn-%G$U{W0oDwxY(L6O_q9P?m^di_eL>5>qat?%);#Tr&7TCEKkEE zoo%eHaJ_w`#PBh5iRe@Y;h&MpPtdaHC_3tisk_-CcC*gzE3yrheH2RG)>o#Wl;2>C z=u5jtvse0Nr9An-Wo;cdHf&i%2z4&BI}c1zC-o0Bh}=JjB}yn&<)YO>Tq~pYVbWl z>cQ4?r29dsvs_nB#*M|_fWTZsiKJht=d@f->{`Ufw|Iv;cx66sLB9bx3wM^@yXuT0 zEsdnMRPZ-3@cp^eeyFWAv&OeYg`~H~l{%Hb0si6e6ZW{AOU!4qR1>U7``)G3u6GP4 z82P*{{6sM?YKLroschiL*!e?Kq`twXf2?{BN2iX52)7toEj)3NCzY>ht{L0yXD^nX zetRp@lP+_O)|J0JT@=%0f1W3KXpgO}Jgis>GOZmgZYY%XCwUt}b%m#Z5&9ur=Y3VY zE6q@UL-Lq{Xp9My9_jnqpnaCTEC`KI8JM9eik^ehj8TRlDqUz~Lrz|Ave6o%JxfJJ z$u9j83{NVmV4R-ZDMBfPNeGgw7Iq3tKmV8tk36|8*lP0Wg{%oQ2k0}8RfyoS)b|gW zqTz;kuZ&VO?(mP64^uIv8fht1tCz|X_tphdekuC(?zDx$|2>j4GQK9l*?xkkM3_V{ zV7W)xv`C7g=w675283kt5bRnQ5ccT5-{t?1u>Nx){QVVD>QIvX=r~n3I((#ng3Efz zQAgT(DTiD3+pg1$0WiY+_g2+q8!hT4^FPM9S|l0gGQJ?#b*L)|uS}Ny0bPs6mWW(? zR1pDa9CTck^l%%ZHMT`EiWi=54zkYg6bzHhiCb#?piXb?yfx3kLF+P^nsEO)MEN;I z_pWnl;6zzL6)dmo>EidjQHSdnB1@V>I6i^VQ(Jym4T1)JugY)a3cEcfYf)!_Oq3R{ zlJy!ZUi=EI4(5yUL#J1|R^^$*9YzhhA8rzE{1wp@nF)z}$s*KFhBS!pwThj)rod2b zUndo$X9WdU+b-Cqkoy}ue70O;k*t&?AAo|W&C4QF!&Bf4#M!P=9+_=6CsGXGkRd3j zYbyN%WFFGH(~lEBUg4iWQ$4_2n=YQ@9Ye9>>LmnKC->Fnec0Cbl&j-mO!@YC>Diyx zJ5CcjQi#3V=&+vd?P#}JCM4<(ZWQ0LPP{H3ujtScapSm>ngKFe4uGDy`k-S;O37^e zzly_u`=kG%O8L|O_>W@%5(IQ|eMe!Kd|*N-h}(=UaJj-HwK#!pPu%I7x;mzE>3?~> zqi~~;&s8?qQ*%_^e6?Ix`;kE}p;60Hhm?u_T+B_ulj0fW$yt74xGVR2*WnFrY_@Jk zX&{^DIQnkzUiyMNa?8Z^Z$J>;xbis>%Sv1(j^M}1a7WJR9OY66__C0M)j3dIQ)q#G zg^wA_NnS99#w=}*XI{|Xd#j;*sx%s^DF0LJ`dcxqBPr~>4ANrc$xE4S^CG?-*B8{}Y{KsQ0qZ*Kh%Oa6ct1EOe#Mt<^{ zY9$~Y!T(wie!drCr^r0`%)EcD=+pm|vd06$Wltbi^^6Gv^fn#Q#u#I#dOWB4!Ox`? z1pc6MnVj=B+6<%mu`}HoB}~_%CkQO7beWv5hoYkfo+R_vSf@IIsgqCdTCbJ3>?yu? zw6!&fx_-fT+Z2~Y?}GDvwkKXhkg|@S`c4445GQJThZO)i^sUY>OVs0e7ycX2r;|FD zcZ)5OEidyc><7%Ka-<1AptREG?U!xCDpJ(DQ;*wH-QxO9RIAKOsdpo6Ostr(p>y3DL~B9=~$?pEVlj2S&DaKTsWB5_Q-P^xzOm~Y-Wb+7~l zE^ryq##$ACe{si?s7`Q!yCfi(vJxI8e$KxRiJQL|1;|%BaT}(@6?Rz_=p-t}y^Lb> zZQtO(W!#6tBUpXDE)}l9D|B??_~-qhfwUH*e~PvKU4r#T*e(bVd`JWkX87N^mhOXa z&j4`#2Qof{MMOsMuWx ziS05;F5K}il0kapkLQWUD!eRSj%Gu=Kv=5zEn8dK%1~%MzvbwASE*D>3PL#MO2ShO zryi$45k?orJZpI}u7dhq^O!bY*@1&z~+S+x=3Kj$r)dbvd}tBl^kF z`F$ssde}j6{C7;1f>b@tjYeK=b(Vd_9k`H@icd-&2MdQQw_yr1-|&llnzJQek1j@t zBE3h7%$9M(V;R$ZD~iIPiP$Q%2nfk&!KX%2Sj1;T*LesxgaEF|hm*-g|46U=>Hk%@ z@t+{{Z%No=M@4)i4(Tx9AU!hALA$4X9<9~pTVy^=D053|^JPT(^oB7+LF)EI%ul;g zLC%%`W+ANaGxM(IiNEf6SYX}f(!m99=?U7$R2@%&k6_Aea{>H?dwwd7B3p#tu)Mr4 z@6|Heg2J#y%5jE@Idvp)B&cC&tKouQx)-RN!!i38{MUmalgj2>&Z)>d(~?sL z)OCVV6L#8zY8l~Iwyt$=TI=1v#Ar0fyLPdQ3RT=*-&Y2fVjFW6xn4_!a7DcIYj5f# zO1!yo>^c$}=g4QU?X*%wpv>RtB@!_a7t--UC-yVNT=%uL2vAww-LbKKu2AI3js{`& zS9L3u?lZnQ+i8UlEHl}-?`UJek)ofwR3eS%bvan^_gDCLG<&!U1efULExk-a+WfG) zmdy88g63C{9b6ZWCdiriRo&RiYS*vlPuh{6_0YsCt{~tMz*75_DIsr)fP9{~H$&Ln);Z@B(K3oD^rL7HY{tEq3rX0f9x^~B_bJ$Rn~ zvh7jX(QbU|SZXIXQ6c+tbz7;zgJ_NbrBY4TSQyZ7>J^ zw%D)ewfucrr4}k7oZKO|@Nv{^W_(#bDhK(?e(JzlpIq9-G> z!Rc0@KSws;!nA58_&wm#v^t31nx}$6Xx?AB5P`e>QD%G1j+Anq z^_{!1-vAsfnFjS%K^CSZ+e9o?IMV*D;9Nz{KVBIKaU`gF_>ZFbB?7v~$EQ5+8Q&|k61k?|$DJiM%Q6=35b z>O-lkwB%cDwy$ZX1th78#nxy8a^g>FqWT zp1J_KAvz%6DQ|iPdqLsr88<74ki^mJb?6amJW*sN9l6Jr${tQe+rTNyjAgu=$hIw& z(IyELYAh3*S@-7A({6qO4bF#X^Z+Qdf1FU!e_JK~f7t)uTkh*WI6m`VVeDUQ9-H%W zwO5D>KLy0a@-uTK5}&LgknEnj&{Vm!b2V7deIra!Oqn`tU6mL^Qh-v19Of_w3k^A4p-kqzi<+%hq{!)sJ6%c#Q54a3ZCcjQi4RufOD`nwDx_$<5fLN( z5C}dFPa0R=wNT)ZnhL!@9f1&S8<21QO=6X2A0h`EGNLflN)+AgAL@J&k}5)jdx*t< ze(e8w7f@In<$#2Ha>bB6tam|sQ6hJ0m5-Au87P#feP%vwd!p~hRDF)pZkfQvuZqYu z>YP+<772DxUXM!nWpV#x;@}I@$JI)U*^Ha<-_BRq-7RefqjOTbEy23z2-x_M=ef&MEI}IOFdbLK*O#7| z+d+N8_zrE=X%xRW!upz`Fx`5Di!}6EBzvY{(r>`iTqg}usu_gD1funOG#9E_VYsjO zMmRC@H$Xo}C!u^gE7~X`xm!&MA}?zYcPf?Q{ArM<#Ot zk8531u#(OmRRvkuI%xdNEm9Q!b>^j~j6_r6A2X)-*q2~}IG?IFUq*F4CqgUguh{ut zm-U}2nFo^g(AMyeNFjmHCjQ|RKm5Z3W&3OCKOaUN@_XTu;1Xe{T=oT0C1tMPb$g1ZDypSoTR>N~~%gE-L=OACK>JnI|$1 zL9tYMuJYr*GE9InqGF+ip#os>K$_I(?2$oNfcO3kSx6Es|F?_%2|yKoIs;UmoZ062 zrQ7N;^?FrB9`>GCy$R#+tS}@5RDmI2%I2WD4cc#+{yhE68O;vE;pIL4d(!d25f)&ey|7W3XJGZOhY|b-dbiA7R zV2SC1QdDXmM&0BN6Kb_rNkM8o!ei23PwA>hdjyM#q$oc)$;f4slGy8ipL#VKV}OCo zFBCnW8Gj9Bm=Sl?sV$i%=jaHJQCNNjUyCG*l(E+vFjE3)QCi==IfVP-ADSlTq`iI@ zPK>s#L-0n!iT2~I`Vmf*^l73Q6Lp(&w&E)v5t5BUx-!8-RsK{?q3f~Ug0NQRb1Hnx zbket{c`6IB%>MMD~ggUwi_*4Su#lpJQ+ZYp_Mk+_wF@`-Wze=zAGYw)K>;1v|mHhwGr zF}t^F_ul6uJiADQE8+m$HhZMdVqfjcF&4BjL->Bg@H5X-Yvg@vh(qlSFVShbCi7rl zn=i|cag%sBUw~4`BONU)a-WucUH_ zE1UL)kSLj@Iz;G8f3-3D{U$ddizu8ocxM;-A|)udKH31id5?|wV&_`fNO*pDPq-~> zTE}mQK2GE%>S>UBMIy2a4#TPU@!_;z^75E;d|T;Ry|# zxuvfjH>X&jv+K$5QjnGTvuo;$2^gQ|S=am|8!xe-$-*!Ud`Y)vJCz}jVS*2KM>VQj zaifeAWFpeb&1V*63JDLt=pxSc4Pqj{_^C5M(zeW+=ut92##6fSF(&8)8=3l002<<$ zG2S&htlQxLh({wB4*#6XpY2%Wy|El2x^UU70Tt6k>z5t0$BW#6t|1uwEi=DGT16sD z(jIaUU85P3=IQIW2=4F50nnlE-{ftBSfX1VU&GnHR)vG5XhaD}U^4O?Xf)IOTqTYW zYl)gJ?>mN$a(?jyD2aM5OT@Aw^3tbOvpg6B+#;zm[eN=UG%t#FF^i)aib$3~RZ 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

qVr6#}_z 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 >3dayTvuHq} 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 diff --git a/CPU_version/LICENCE b/CPU_version/LICENCE deleted file mode 100755 index 70fc6da..0000000 --- a/CPU_version/LICENCE +++ /dev/null @@ -1,675 +0,0 @@ -GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. {http://fsf.org/} - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU General Public License is a free, copyleft license for -software and other kinds of works. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. We, the Free Software Foundation, use the -GNU General Public License for most of our software; it applies also to -any other work released this way by its authors. You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you have -certain responsibilities if you distribute copies of the software, or if -you modify it: responsibilities to respect the freedom of others. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, receive -or can get the source code. And you must show them these terms so they -know their rights. - - Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - - For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - - Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the manufacturer -can do so. This is fundamentally incompatible with the aim of -protecting users' freedom to change the software. The systematic -pattern of such abuse occurs in the area of products for individuals to -use, which is precisely where it is most unacceptable. Therefore, we -have designed this version of the GPL to prohibit the practice for those -products. If such problems arise substantially in other domains, we -stand ready to extend this provision to those domains in future versions -of the GPL, as needed to protect the freedom of users. - - Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish to -avoid the special danger that patents applied to a free program could -make it effectively proprietary. To prevent this, the GPL assures that -patents cannot be used to render the program non-free. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Use with the GNU Affero General Public License. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the special requirements of the GNU Affero General Public License, -section 13, concerning interaction through a network will apply to the -combination as such. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - {one line to give the program's name and a brief idea of what it does.} - Copyright (C) {year} {name of author} - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see {http://www.gnu.org/licenses/}. - -Also add information on how to contact you by electronic and paper mail. - - If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - - PTAM-GPL Copyright (C) 2013 Oxford-PTAM - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -{http://www.gnu.org/licenses/}. - - The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -{http://www.gnu.org/philosophy/why-not-lgpl.html}. - diff --git a/CPU_version/README.md b/CPU_version/README.md deleted file mode 100755 index 8387b0e..0000000 --- a/CPU_version/README.md +++ /dev/null @@ -1,64 +0,0 @@ -SVO -=== - -This code implements a semi-direct monocular visual odometry pipeline which has been integrated with GTSAM to infused IMU as well. - - -Paper svo: http://rpg.ifi.uzh.ch/docs/ICRA14_Forster.pdf -Paper Svo+GTSAM: https://arxiv.org/abs/1512.02363 - - -#### Disclaimer - -SVO has been tested under ROS Groovy, Hydro and Indigo with Ubuntu 12.04, 13.04 and 14.04. This is research code, any fitness for a particular purpose is disclaimed. - - -#### Licence - -The source code is released under a GPLv3 licence. A closed-source professional edition is available for commercial purposes. In this case, please contact the authors for further info. - - -#### Citing - -If you use SVO in an academic context, please cite the following publication: - - @inproceedings{Forster2014ICRA, - author = {Forster, Christian and Pizzoli, Matia and Scaramuzza, Davide}, - title = {{SVO}: Fast Semi-Direct Monocular Visual Odometry}, - booktitle = {IEEE International Conference on Robotics and Automation (ICRA)}, - year = {2014} - } - - -#### Documentation - -The API is documented here: http://uzh-rpg.github.io/rpg_svo/doc/ -The GTSAM documentation https://gtsam.org/tutorials/ - -#### Instructions - -First install gtsam library => https://github.com/borglab/gtsam - -Then follow the SVO instalation - -See the Wiki for more instructions. https://github.com/uzh-rpg/rpg_svo/wiki and https://gtsam.org/get_started/ - -#### Contributing - -You are very welcome to contribute to SVO by opening a pull request via Github. -I try to follow the ROS C++ style guide http://wiki.ros.org/CppStyleGuide - -## Setting - -You can edit the camera position in the launch file as (The IMU frame will rotate to align with camera frame based on the follwoing Eular angles): -CPU_version/vio_svo/launch/Px30.launch - - - - - - -You can also edit the algorithm parameters in the follwoing file, please look at the config file to underestand the meaning of the parameters (CPU_version/svo/include/svo/config.h) - -CPU_version/vio_svo/param/vo_fast.yaml - diff --git a/CPU_version/__init__.py b/CPU_version/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/CPU_version/svo/.idea/.gitignore b/CPU_version/svo/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/CPU_version/svo/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/CPU_version/svo/.idea/misc.xml b/CPU_version/svo/.idea/misc.xml deleted file mode 100644 index 79b3c94..0000000 --- a/CPU_version/svo/.idea/misc.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/CPU_version/svo/.idea/modules.xml b/CPU_version/svo/.idea/modules.xml deleted file mode 100644 index 4c8cf2b..0000000 --- a/CPU_version/svo/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/CPU_version/svo/.idea/svo.iml b/CPU_version/svo/.idea/svo.iml deleted file mode 100644 index f08604b..0000000 --- a/CPU_version/svo/.idea/svo.iml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/CPU_version/svo/.idea/vcs.xml b/CPU_version/svo/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/CPU_version/svo/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/CPU_version/svo/CMakeLists.txt b/CPU_version/svo/CMakeLists.txt deleted file mode 100644 index c3ace90..0000000 --- a/CPU_version/svo/CMakeLists.txt +++ /dev/null @@ -1,156 +0,0 @@ -################################################################################ -# user build settings - -SET(TRACE TRUE) -SET(HAVE_G2O FALSE) -SET(USE_ROS TRUE) # Set FALSE if you want to build this package without Catkin -SET(DEBUG_OUTPUT FALSE) # Only relevant if build without ROS - -################################################################################ - -SET(PROJECT_NAME svo) -PROJECT(${PROJECT_NAME}) -CMAKE_MINIMUM_REQUIRED (VERSION 2.8.3) -SET(CMAKE_BUILD_TYPE Release) # Release, RelWithDebInfo -SET(CMAKE_VERBOSE_MAKEFILE OFF) -SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/CMakeModules/") -set(CMAKE_C_STANDARD 14) -set(CMAKE_CXX_STANDARD 14) - -# Set definitions -IF(TRACE) - ADD_DEFINITIONS(-DSVO_TRACE) -ENDIF() -IF(HAVE_G2O) - ADD_DEFINITIONS(-DUSE_BUNDLE_ADJUSTMENT) -ENDIF() -IF(USE_ROS) - ADD_DEFINITIONS(-DSVO_USE_ROS) -ENDIF() -IF(DEBUG_OUTPUT) - ADD_DEFINITIONS(-DSVO_DEBUG_OUTPUT) -ENDIF() - -# Set build flags, set ARM_ARCHITECTURE environment variable on Odroid -# Set build flags. Set IS_ARM on odroid board as environment variable -SET(CMAKE_CXX_FLAGS "-Wall -D_LINUX -D_REENTRANT -march=native -Wno-unused-variable -Wno-unused-but-set-variable -Wno-unknown-pragmas") -IF(DEFINED ENV{ARM_ARCHITECTURE}) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ") -ELSE() - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmmx -msse -msse -msse2 -msse3 -mssse3") -ENDIF() -IF(CMAKE_COMPILER_IS_GNUCC) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") -ELSE() - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -ENDIF() -SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -O3 -fsee -fomit-frame-pointer -fno-signed-zeros -fno-math-errno -funroll-loops") - -# Add plain cmake packages -FIND_PACKAGE(OpenCV 3 REQUIRED) -FIND_PACKAGE(Eigen REQUIRED) -FIND_PACKAGE(Sophus REQUIRED) -FIND_PACKAGE(fast REQUIRED) -FIND_PACKAGE(Boost REQUIRED COMPONENTS thread system) -FIND_PACKAGE(GTSAM REQUIRED) - -set(GTSAM_INCLUDE_DIRS "${GTSAM_INCLUDE_DIR}") -IF(USE_ROS) - FIND_PACKAGE(catkin REQUIRED COMPONENTS roscpp roslib cmake_modules vikit_common vikit_ros) - catkin_package( - DEPENDS Eigen OpenCV Sophus Boost fast GTSAM - CATKIN_DEPENDS roscpp roslib vikit_common vikit_ros - INCLUDE_DIRS include - LIBRARIES svo - ) -ELSE() - FIND_PACKAGE(vikit_common REQUIRED) - SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) - SET(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib) -ENDIF() - -# Include dirs -INCLUDE_DIRECTORIES( - include - ${Eigen_INCLUDE_DIRS} - ${OpenCV_INCLUDE_DIRS} - ${Sophus_INCLUDE_DIRS} - ${Boost_INCLUDE_DIRS} - ${fast_INCLUDE_DIRS} ${GTSAM_INCLUDE_DIR} -) - -# Set link libraries -LIST(APPEND LINK_LIBS - ${OpenCV_LIBS} - ${Sophus_LIBRARIES} - ${Boost_LIBRARIES} - ${fast_LIBRARIES} -) -IF(USE_ROS) - INCLUDE_DIRECTORIES(${catkin_INCLUDE_DIRS}) - LIST(APPEND LINK_LIBS ${catkin_LIBRARIES}) -ELSE() - INCLUDE_DIRECTORIES(${vikit_common_INCLUDE_DIRS}) - LIST(APPEND LINK_LIBS ${vikit_common_LIBRARIES}) -ENDIF() - -# Set sourcefiles -LIST(APPEND SOURCEFILES - src/frame_handler_mono.cpp - src/frame_handler_base.cpp - src/frame.cpp - src/point.cpp - src/map.cpp - src/pose_optimizer.cpp - src/initialization.cpp - src/matcher.cpp - src/reprojector.cpp - src/feature_alignment.cpp - src/feature_detection.cpp - src/depth_filter.cpp - src/config.cpp - src/sparse_img_align.cpp src/imu_integration.cpp) - -# Add g2o if available -IF(HAVE_G2O) - FIND_PACKAGE(G2O REQUIRED) - INCLUDE_DIRECTORIES( - ${G2O_INCLUDE_DIR} - /usr/include/suitesparse # for cholmod - ) - LIST(APPEND LINK_LIBS - ${G2O_CORE_LIBRARY} ${G2O_STUFF_LIBRARY} ${G2O_SOLVER_CHOLMOD} ${G2O_SOLVER_CSPARSE} ${G2O_SOLVER_DENSE} - ${G2O_SOLVER_PCG} ${G2O_TYPES_SBA} cholmod cxsparse - ) - LIST(APPEND SOURCEFILES src/bundle_adjustment.cpp) -ENDIF(HAVE_G2O) - -# Create svo library -ADD_LIBRARY(svo SHARED ${SOURCEFILES}) -TARGET_LINK_LIBRARIES(svo ${LINK_LIBS} gtsam) -set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD 14) -set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD_REQUIRED ON) - -################################################################################ -# TESTS - -#ADD_EXECUTABLE(test_feature_align test/test_feature_alignment.cpp) -#TARGET_LINK_LIBRARIES(test_feature_align svo) - -#ADD_EXECUTABLE(test_pipeline test/test_pipeline.cpp) -#TARGET_LINK_LIBRARIES(test_pipeline svo) - -#ADD_EXECUTABLE(test_matcher test/test_matcher.cpp) -#TARGET_LINK_LIBRARIES(test_matcher svo) - -#ADD_EXECUTABLE(test_feature_detection test/test_feature_detection.cpp) -#TARGET_LINK_LIBRARIES(test_feature_detection svo) - -#ADD_EXECUTABLE(test_depth_filter test/test_depth_filter.cpp) -#TARGET_LINK_LIBRARIES(test_depth_filter svo) - -#ADD_EXECUTABLE(test_sparse_img_align test/test_sparse_img_align.cpp) -#TARGET_LINK_LIBRARIES(test_sparse_img_align svo) - -#ADD_EXECUTABLE(test_pose_optimizer test/test_pose_optimizer.cpp) -#TARGET_LINK_LIBRARIES(test_pose_optimizer svo) diff --git a/CPU_version/svo/CMakeModules/FindEigen.cmake b/CPU_version/svo/CMakeModules/FindEigen.cmake deleted file mode 100644 index 8587367..0000000 --- a/CPU_version/svo/CMakeModules/FindEigen.cmake +++ /dev/null @@ -1,81 +0,0 @@ -############################################################################### -# -# CMake script for finding the Eigen library. -# -# http://eigen.tuxfamily.org/index.php?title=Main_Page -# -# Copyright (c) 2006, 2007 Montel Laurent, -# Copyright (c) 2008, 2009 Gael Guennebaud, -# Copyright (c) 2009 Benoit Jacob -# Redistribution and use is allowed according to the terms of the 2-clause BSD -# license. -# -# -# Input variables: -# -# - Eigen_ROOT_DIR (optional): When specified, header files and libraries -# will be searched for in `${Eigen_ROOT_DIR}/include` and -# `${Eigen_ROOT_DIR}/libs` respectively, and the default CMake search order -# will be ignored. When unspecified, the default CMake search order is used. -# This variable can be specified either as a CMake or environment variable. -# If both are set, preference is given to the CMake variable. -# Use this variable for finding packages installed in a nonstandard location, -# or for enforcing that one of multiple package installations is picked up. -# -# Cache variables (not intended to be used in CMakeLists.txt files) -# -# - Eigen_INCLUDE_DIR: Absolute path to package headers. -# -# -# Output variables: -# -# - Eigen_FOUND: Boolean that indicates if the package was found -# - Eigen_INCLUDE_DIRS: Paths to the necessary header files -# - Eigen_VERSION: Version of Eigen library found -# - Eigen_DEFINITIONS: Definitions to be passed on behalf of eigen -# -# -# Example usage: -# -# # Passing the version means Eigen_FOUND will only be TRUE if a -# # version >= the provided version is found. -# find_package(Eigen 3.1.2) -# if(NOT Eigen_FOUND) -# # Error handling -# endif() -# ... -# add_definitions(${Eigen_DEFINITIONS}) -# ... -# include_directories(${Eigen_INCLUDE_DIRS} ...) -# -############################################################################### - -find_package(PkgConfig) -pkg_check_modules(PC_EIGEN eigen3) -set(EIGEN_DEFINITIONS ${PC_EIGEN_CFLAGS_OTHER}) - - -find_path(EIGEN_INCLUDE_DIR Eigen/Core - HINTS ${PC_EIGEN_INCLUDEDIR} ${PC_EIGEN_INCLUDE_DIRS} - "${Eigen_ROOT_DIR}" "$ENV{EIGEN_ROOT_DIR}" - "${EIGEN_ROOT}" "$ENV{EIGEN_ROOT}" # Backwards Compatibility - PATHS "$ENV{PROGRAMFILES}/Eigen" "$ENV{PROGRAMW6432}/Eigen" - "$ENV{PROGRAMFILES}/Eigen 3.0.0" "$ENV{PROGRAMW6432}/Eigen 3.0.0" - PATH_SUFFIXES eigen3 include/eigen3 include) - -set(EIGEN_INCLUDE_DIRS ${EIGEN_INCLUDE_DIR}) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Eigen DEFAULT_MSG EIGEN_INCLUDE_DIR) - -mark_as_advanced(EIGEN_INCLUDE_DIR) - -if(EIGEN_FOUND) - message(STATUS "Eigen found (include: ${EIGEN_INCLUDE_DIRS})") -endif(EIGEN_FOUND) - - -set(Eigen_INCLUDE_DIRS ${EIGEN_INCLUDE_DIRS}) -set(Eigen_FOUND ${EIGEN_FOUND}) -set(Eigen_VERSION ${EIGEN_VERSION}) -set(Eigen_DEFINITIONS ${EIGEN_DEFINITIONS}) diff --git a/CPU_version/svo/CMakeModules/FindG2O.cmake b/CPU_version/svo/CMakeModules/FindG2O.cmake deleted file mode 100644 index 655600f..0000000 --- a/CPU_version/svo/CMakeModules/FindG2O.cmake +++ /dev/null @@ -1,113 +0,0 @@ -# Find the header files - -FIND_PATH(G2O_INCLUDE_DIR g2o/core/base_vertex.h - ${G2O_ROOT}/include - $ENV{G2O_ROOT}/include - $ENV{G2O_ROOT} - /usr/local/include - /usr/include - /opt/local/include - /sw/local/include - /sw/include - NO_DEFAULT_PATH - ) - -# Macro to unify finding both the debug and release versions of the -# libraries; this is adapted from the OpenSceneGraph FIND_LIBRARY -# macro. - -MACRO(FIND_G2O_LIBRARY MYLIBRARY MYLIBRARYNAME) - - FIND_LIBRARY("${MYLIBRARY}_DEBUG" - NAMES "g2o_${MYLIBRARYNAME}_d" - PATHS - ${G2O_ROOT}/lib/Debug - ${G2O_ROOT}/lib - $ENV{G2O_ROOT}/lib/Debug - $ENV{G2O_ROOT}/lib - NO_DEFAULT_PATH - ) - - FIND_LIBRARY("${MYLIBRARY}_DEBUG" - NAMES "g2o_${MYLIBRARYNAME}_d" - PATHS - ~/Library/Frameworks - /Library/Frameworks - /usr/local/lib - /usr/local/lib64 - /usr/lib - /usr/lib64 - /opt/local/lib - /sw/local/lib - /sw/lib - ) - - FIND_LIBRARY(${MYLIBRARY} - NAMES "g2o_${MYLIBRARYNAME}" - PATHS - ${G2O_ROOT}/lib/Release - ${G2O_ROOT}/lib - $ENV{G2O_ROOT}/lib/Release - $ENV{G2O_ROOT}/lib - NO_DEFAULT_PATH - ) - - FIND_LIBRARY(${MYLIBRARY} - NAMES "g2o_${MYLIBRARYNAME}" - PATHS - ~/Library/Frameworks - /Library/Frameworks - /usr/local/lib - /usr/local/lib64 - /usr/lib - /usr/lib64 - /opt/local/lib - /sw/local/lib - /sw/lib - ) - - IF(NOT ${MYLIBRARY}_DEBUG) - IF(MYLIBRARY) - SET(${MYLIBRARY}_DEBUG ${MYLIBRARY}) - ENDIF(MYLIBRARY) - ENDIF( NOT ${MYLIBRARY}_DEBUG) - -ENDMACRO(FIND_G2O_LIBRARY LIBRARY LIBRARYNAME) - -# Find the core elements -FIND_G2O_LIBRARY(G2O_STUFF_LIBRARY stuff) -FIND_G2O_LIBRARY(G2O_CORE_LIBRARY core) - -# Find the CLI library -FIND_G2O_LIBRARY(G2O_CLI_LIBRARY cli) - -# Find the pluggable solvers -FIND_G2O_LIBRARY(G2O_SOLVER_CHOLMOD solver_cholmod) -FIND_G2O_LIBRARY(G2O_SOLVER_CSPARSE solver_csparse) -FIND_G2O_LIBRARY(G2O_SOLVER_CSPARSE_EXTENSION csparse_extension) -FIND_G2O_LIBRARY(G2O_SOLVER_DENSE solver_dense) -FIND_G2O_LIBRARY(G2O_SOLVER_PCG solver_pcg) -FIND_G2O_LIBRARY(G2O_SOLVER_SLAM2D_LINEAR solver_slam2d_linear) -FIND_G2O_LIBRARY(G2O_SOLVER_STRUCTURE_ONLY solver_structure_only) -FIND_G2O_LIBRARY(G2O_SOLVER_EIGEN solver_eigen) - -# Find the predefined types -FIND_G2O_LIBRARY(G2O_TYPES_DATA types_data) -FIND_G2O_LIBRARY(G2O_TYPES_ICP types_icp) -FIND_G2O_LIBRARY(G2O_TYPES_SBA types_sba) -FIND_G2O_LIBRARY(G2O_TYPES_SCLAM2D types_sclam2d) -FIND_G2O_LIBRARY(G2O_TYPES_SIM3 types_sim3) -FIND_G2O_LIBRARY(G2O_TYPES_SLAM2D types_slam2d) -FIND_G2O_LIBRARY(G2O_TYPES_SLAM3D types_slam3d) - -# G2O solvers declared found if we found at least one solver -SET(G2O_SOLVERS_FOUND "NO") -IF(G2O_SOLVER_CHOLMOD OR G2O_SOLVER_CSPARSE OR G2O_SOLVER_DENSE OR G2O_SOLVER_PCG OR G2O_SOLVER_SLAM2D_LINEAR OR G2O_SOLVER_STRUCTURE_ONLY OR G2O_SOLVER_EIGEN) - SET(G2O_SOLVERS_FOUND "YES") -ENDIF(G2O_SOLVER_CHOLMOD OR G2O_SOLVER_CSPARSE OR G2O_SOLVER_DENSE OR G2O_SOLVER_PCG OR G2O_SOLVER_SLAM2D_LINEAR OR G2O_SOLVER_STRUCTURE_ONLY OR G2O_SOLVER_EIGEN) - -# G2O itself declared found if we found the core libraries and at least one solver -SET(G2O_FOUND "NO") -IF(G2O_STUFF_LIBRARY AND G2O_CORE_LIBRARY AND G2O_INCLUDE_DIR AND G2O_SOLVERS_FOUND) - SET(G2O_FOUND "YES") -ENDIF(G2O_STUFF_LIBRARY AND G2O_CORE_LIBRARY AND G2O_INCLUDE_DIR AND G2O_SOLVERS_FOUND) diff --git a/CPU_version/svo/Doxyfile b/CPU_version/svo/Doxyfile deleted file mode 100644 index b1b4256..0000000 --- a/CPU_version/svo/Doxyfile +++ /dev/null @@ -1,1782 +0,0 @@ -# Doxyfile 1.7.6.1 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project. -# -# All text after a hash (#) is considered a comment and will be ignored. -# The format is: -# TAG = value [value, ...] -# For lists items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (" "). - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# This tag specifies the encoding used for all characters in the config file -# that follow. The default is UTF-8 which is also the encoding used for all -# text before the first occurrence of this tag. Doxygen uses libiconv (or the -# iconv built into libc) for the transcoding. See -# http://www.gnu.org/software/libiconv for the list of possible encodings. - -DOXYFILE_ENCODING = UTF-8 - -# The PROJECT_NAME tag is a single word (or sequence of words) that should -# identify the project. Note that if you do not use Doxywizard you need -# to put quotes around the project name if it contains spaces. - -PROJECT_NAME = "svo" - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. -# This could be handy for archiving the generated documentation or -# if some version control system is used. - -PROJECT_NUMBER = - -# Using the PROJECT_BRIEF tag one can provide an optional one line description -# for a project that appears at the top of each page and should give viewer -# a quick idea about the purpose of the project. Keep the description short. - -PROJECT_BRIEF = "Semi-Direct Visual Odometry" - -# With the PROJECT_LOGO tag one can specify an logo or icon that is -# included in the documentation. The maximum height of the logo should not -# exceed 55 pixels and the maximum width should not exceed 200 pixels. -# Doxygen will copy the logo to the output directory. - -PROJECT_LOGO = - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) -# base path where the generated documentation will be put. -# If a relative path is entered, it will be relative to the location -# where doxygen was started. If left blank the current directory will be used. - -OUTPUT_DIRECTORY = "doc" - -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create -# 4096 sub-directories (in 2 levels) under the output directory of each output -# format and will distribute the generated files over these directories. -# Enabling this option can be useful when feeding doxygen a huge amount of -# source files, where putting all generated files in the same directory would -# otherwise cause performance problems for the file system. - -CREATE_SUBDIRS = NO - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# The default language is English, other supported languages are: -# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, -# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, -# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English -# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, -# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, -# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. - -OUTPUT_LANGUAGE = English - -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will -# include brief member descriptions after the members that are listed in -# the file and class documentation (similar to JavaDoc). -# Set to NO to disable this. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend -# the brief description of a member or function before the detailed description. -# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator -# that is used to form the text in various listings. Each string -# in this list, if found as the leading text of the brief description, will be -# stripped from the text and the result after processing the whole list, is -# used as the annotated text. Otherwise, the brief description is used as-is. -# If left blank, the following values are used ("$name" is automatically -# replaced with the name of the entity): "The $name class" "The $name widget" -# "The $name file" "is" "provides" "specifies" "contains" -# "represents" "a" "an" "the" - -ABBREVIATE_BRIEF = - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# Doxygen will generate a detailed section even if there is only a brief -# description. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all -# inherited members of a class in the documentation of that class as if those -# members were ordinary class members. Constructors, destructors and assignment -# operators of the base classes will not be shown. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full -# path before files name in the file list and in the header files. If set -# to NO the shortest path that makes the file name unique will be used. - -FULL_PATH_NAMES = YES - -# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag -# can be used to strip a user-defined part of the path. Stripping is -# only done if one of the specified strings matches the left-hand part of -# the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the -# path to strip. - -STRIP_FROM_PATH = - -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of -# the path mentioned in the documentation of a class, which tells -# the reader which header file to include in order to use a class. -# If left blank only the name of the header file containing the class -# definition is used. Otherwise one should specify the include paths that -# are normally passed to the compiler using the -I flag. - -STRIP_FROM_INC_PATH = - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter -# (but less readable) file names. This can be useful if your file system -# doesn't support long names like on DOS, Mac, or CD-ROM. - -SHORT_NAMES = NO - -# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen -# will interpret the first line (until the first dot) of a JavaDoc-style -# comment as the brief description. If set to NO, the JavaDoc -# comments will behave just like regular Qt-style comments -# (thus requiring an explicit @brief command for a brief description.) - -JAVADOC_AUTOBRIEF = YES - -# If the QT_AUTOBRIEF tag is set to YES then Doxygen will -# interpret the first line (until the first dot) of a Qt-style -# comment as the brief description. If set to NO, the comments -# will behave just like regular Qt-style comments (thus requiring -# an explicit \brief command for a brief description.) - -QT_AUTOBRIEF = NO - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen -# treat a multi-line C++ special comment block (i.e. a block of //! or /// -# comments) as a brief description. This used to be the default behaviour. -# The new default is to treat a multi-line C++ comment block as a detailed -# description. Set this tag to YES if you prefer the old behaviour instead. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented -# member inherits the documentation from any documented member that it -# re-implements. - -INHERIT_DOCS = YES - -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce -# a new page for each member. If set to NO, the documentation of a member will -# be part of the file/class/namespace that contains it. - -SEPARATE_MEMBER_PAGES = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. -# Doxygen uses this value to replace tabs by spaces in code fragments. - -TAB_SIZE = 8 - -# This tag can be used to specify a number of aliases that acts -# as commands in the documentation. An alias has the form "name=value". -# For example adding "sideeffect=\par Side Effects:\n" will allow you to -# put the command \sideeffect (or @sideeffect) in the documentation, which -# will result in a user-defined paragraph with heading "Side Effects:". -# You can put \n's in the value part of an alias to insert newlines. - -ALIASES = - -# This tag can be used to specify a number of word-keyword mappings (TCL only). -# A mapping has the form "name=value". For example adding -# "class=itcl::class" will allow you to use the command class in the -# itcl::class meaning. - -TCL_SUBST = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C -# sources only. Doxygen will then generate output that is more tailored for C. -# For instance, some of the names that are used will be different. The list -# of all members will be omitted, etc. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java -# sources only. Doxygen will then generate output that is more tailored for -# Java. For instance, namespaces will be presented as packages, qualified -# scopes will look different, etc. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -# sources only. Doxygen will then generate output that is more tailored for -# Fortran. - -OPTIMIZE_FOR_FORTRAN = NO - -# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL -# sources. Doxygen will then generate output that is tailored for -# VHDL. - -OPTIMIZE_OUTPUT_VHDL = NO - -# Doxygen selects the parser to use depending on the extension of the files it -# parses. With this tag you can assign which parser to use for a given extension. -# Doxygen has a built-in mapping, but you can override or extend it using this -# tag. The format is ext=language, where ext is a file extension, and language -# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C, -# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make -# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C -# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions -# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen. - -EXTENSION_MAPPING = - -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want -# to include (a tag file for) the STL sources as input, then you should -# set this tag to YES in order to let doxygen match functions declarations and -# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. -# func(std::string) {}). This also makes the inheritance and collaboration -# diagrams that involve STL classes more complete and accurate. - -BUILTIN_STL_SUPPORT = NO - -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. -# Doxygen will parse them like normal C++ but will assume all classes use public -# instead of private inheritance when no explicit protection keyword is present. - -SIP_SUPPORT = NO - -# For Microsoft's IDL there are propget and propput attributes to indicate getter -# and setter methods for a property. Setting this option to YES (the default) -# will make doxygen replace the get and set methods by a property in the -# documentation. This will only work if the methods are indeed getting or -# setting a simple type. If this is not the case, or you want to show the -# methods anyway, you should set this option to NO. - -IDL_PROPERTY_SUPPORT = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. - -DISTRIBUTE_GROUP_DOC = NO - -# Set the SUBGROUPING tag to YES (the default) to allow class member groups of -# the same type (for instance a group of public functions) to be put as a -# subgroup of that type (e.g. under the Public Functions section). Set it to -# NO to prevent subgrouping. Alternatively, this can be done per class using -# the \nosubgrouping command. - -SUBGROUPING = YES - -# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and -# unions are shown inside the group in which they are included (e.g. using -# @ingroup) instead of on a separate page (for HTML and Man pages) or -# section (for LaTeX and RTF). - -INLINE_GROUPED_CLASSES = NO - -# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and -# unions with only public data fields will be shown inline in the documentation -# of the scope in which they are defined (i.e. file, namespace, or group -# documentation), provided this scope is documented. If set to NO (the default), -# structs, classes, and unions are shown on a separate page (for HTML and Man -# pages) or section (for LaTeX and RTF). - -INLINE_SIMPLE_STRUCTS = NO - -# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum -# is documented as struct, union, or enum with the name of the typedef. So -# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -# with name TypeT. When disabled the typedef will appear as a member of a file, -# namespace, or class. And the struct will be named TypeS. This can typically -# be useful for C code in case the coding convention dictates that all compound -# types are typedef'ed and only the typedef is referenced, never the tag name. - -TYPEDEF_HIDES_STRUCT = NO - -# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to -# determine which symbols to keep in memory and which to flush to disk. -# When the cache is full, less often used symbols will be written to disk. -# For small to medium size projects (<1000 input files) the default value is -# probably good enough. For larger projects a too small cache size can cause -# doxygen to be busy swapping symbols to and from disk most of the time -# causing a significant performance penalty. -# If the system has enough physical memory increasing the cache will improve the -# performance by keeping more symbols in memory. Note that the value works on -# a logarithmic scale so increasing the size by one will roughly double the -# memory usage. The cache size is given by this formula: -# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, -# corresponding to a cache size of 2^16 = 65536 symbols. - -SYMBOL_CACHE_SIZE = 0 - -# Similar to the SYMBOL_CACHE_SIZE the size of the symbol lookup cache can be -# set using LOOKUP_CACHE_SIZE. This cache is used to resolve symbols given -# their name and scope. Since this can be an expensive process and often the -# same symbol appear multiple times in the code, doxygen keeps a cache of -# pre-resolved symbols. If the cache is too small doxygen will become slower. -# If the cache is too large, memory is wasted. The cache size is given by this -# formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range is 0..9, the default is 0, -# corresponding to a cache size of 2^16 = 65536 symbols. - -LOOKUP_CACHE_SIZE = 0 - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. -# Private class members and static file members will be hidden unless -# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES - -EXTRACT_ALL = YES - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class -# will be included in the documentation. - -EXTRACT_PRIVATE = YES - -# If the EXTRACT_STATIC tag is set to YES all static members of a file -# will be included in the documentation. - -EXTRACT_STATIC = YES - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) -# defined locally in source files will be included in the documentation. -# If set to NO only classes defined in header files are included. - -EXTRACT_LOCAL_CLASSES = YES - -# This flag is only useful for Objective-C code. When set to YES local -# methods, which are defined in the implementation section but not in -# the interface are included in the documentation. -# If set to NO (the default) only methods in the interface are included. - -EXTRACT_LOCAL_METHODS = NO - -# If this flag is set to YES, the members of anonymous namespaces will be -# extracted and appear in the documentation as a namespace called -# 'anonymous_namespace{file}', where file will be replaced with the base -# name of the file that contains the anonymous namespace. By default -# anonymous namespaces are hidden. - -EXTRACT_ANON_NSPACES = NO - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all -# undocumented members of documented classes, files or namespaces. -# If set to NO (the default) these members will be included in the -# various overviews, but no documentation section is generated. -# This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_MEMBERS = NO - -# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. -# If set to NO (the default) these classes will be included in the various -# overviews. This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all -# friend (class|struct|union) declarations. -# If set to NO (the default) these declarations will be included in the -# documentation. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any -# documentation blocks found inside the body of a function. -# If set to NO (the default) these blocks will be appended to the -# function's detailed documentation block. - -HIDE_IN_BODY_DOCS = NO - -# The INTERNAL_DOCS tag determines if documentation -# that is typed after a \internal command is included. If the tag is set -# to NO (the default) then the documentation will be excluded. -# Set it to YES to include the internal documentation. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate -# file names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# and Mac users are advised to set this option to NO. - -CASE_SENSE_NAMES = YES - -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen -# will show members with their full class and namespace scopes in the -# documentation. If set to YES the scope will be hidden. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen -# will put a list of the files that are included by a file in the documentation -# of that file. - -SHOW_INCLUDE_FILES = YES - -# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen -# will list include files with double quotes in the documentation -# rather than with sharp brackets. - -FORCE_LOCAL_INCLUDES = NO - -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] -# is inserted in the documentation for inline members. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen -# will sort the (detailed) documentation of file and class members -# alphabetically by member name. If set to NO the members will appear in -# declaration order. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the -# brief documentation of file, namespace and class members alphabetically -# by member name. If set to NO (the default) the members will appear in -# declaration order. - -SORT_BRIEF_DOCS = NO - -# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen -# will sort the (brief and detailed) documentation of class members so that -# constructors and destructors are listed first. If set to NO (the default) -# the constructors will appear in the respective orders defined by -# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. -# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO -# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. - -SORT_MEMBERS_CTORS_1ST = NO - -# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the -# hierarchy of group names into alphabetical order. If set to NO (the default) -# the group names will appear in their defined order. - -SORT_GROUP_NAMES = NO - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be -# sorted by fully-qualified names, including namespaces. If set to -# NO (the default), the class list will be sorted only by class name, -# not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the -# alphabetical list. - -SORT_BY_SCOPE_NAME = NO - -# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to -# do proper type resolution of all parameters of a function it will reject a -# match between the prototype and the implementation of a member function even -# if there is only one candidate or it is obvious which candidate to choose -# by doing a simple string match. By disabling STRICT_PROTO_MATCHING doxygen -# will still accept a match between prototype and implementation in such cases. - -STRICT_PROTO_MATCHING = NO - -# The GENERATE_TODOLIST tag can be used to enable (YES) or -# disable (NO) the todo list. This list is created by putting \todo -# commands in the documentation. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable (YES) or -# disable (NO) the test list. This list is created by putting \test -# commands in the documentation. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable (YES) or -# disable (NO) the bug list. This list is created by putting \bug -# commands in the documentation. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or -# disable (NO) the deprecated list. This list is created by putting -# \deprecated commands in the documentation. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional -# documentation sections, marked by \if sectionname ... \endif. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines -# the initial value of a variable or macro consists of for it to appear in -# the documentation. If the initializer consists of more lines than specified -# here it will be hidden. Use a value of 0 to hide initializers completely. -# The appearance of the initializer of individual variables and macros in the -# documentation can be controlled using \showinitializer or \hideinitializer -# command in the documentation regardless of this setting. - -MAX_INITIALIZER_LINES = 30 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated -# at the bottom of the documentation of classes and structs. If set to YES the -# list will mention the files that were used to generate the documentation. - -SHOW_USED_FILES = YES - -# If the sources in your project are distributed over multiple directories -# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy -# in the documentation. The default is NO. - -SHOW_DIRECTORIES = NO - -# Set the SHOW_FILES tag to NO to disable the generation of the Files page. -# This will remove the Files entry from the Quick Index and from the -# Folder Tree View (if specified). The default is YES. - -SHOW_FILES = YES - -# Set the SHOW_NAMESPACES tag to NO to disable the generation of the -# Namespaces page. -# This will remove the Namespaces entry from the Quick Index -# and from the Folder Tree View (if specified). The default is YES. - -SHOW_NAMESPACES = YES - -# The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from -# the version control system). Doxygen will invoke the program by executing (via -# popen()) the command , where is the value of -# the FILE_VERSION_FILTER tag, and is the name of an input file -# provided by doxygen. Whatever the program writes to standard output -# is used as the file version. See the manual for examples. - -FILE_VERSION_FILTER = - -# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed -# by doxygen. The layout file controls the global structure of the generated -# output files in an output format independent way. The create the layout file -# that represents doxygen's defaults, run doxygen with the -l option. -# You can optionally specify a file name after the option, if omitted -# DoxygenLayout.xml will be used as the name of the layout file. - -LAYOUT_FILE = - -# The CITE_BIB_FILES tag can be used to specify one or more bib files -# containing the references data. This must be a list of .bib files. The -# .bib extension is automatically appended if omitted. Using this command -# requires the bibtex tool to be installed. See also -# http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style -# of the bibliography can be controlled using LATEX_BIB_STYLE. To use this -# feature you need bibtex and perl available in the search path. - -CITE_BIB_FILES = - -#--------------------------------------------------------------------------- -# configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated -# by doxygen. Possible values are YES and NO. If left blank NO is used. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated by doxygen. Possible values are YES and NO. If left blank -# NO is used. - -WARNINGS = YES - -# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings -# for undocumented members. If EXTRACT_ALL is set to YES then this flag will -# automatically be disabled. - -WARN_IF_UNDOCUMENTED = YES - -# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some -# parameters in a documented function, or documenting parameters that -# don't exist or using markup commands wrongly. - -WARN_IF_DOC_ERROR = YES - -# The WARN_NO_PARAMDOC option can be enabled to get warnings for -# functions that are documented, but have no documentation for their parameters -# or return value. If set to NO (the default) doxygen will only warn about -# wrong or incomplete parameter documentation, but not about the absence of -# documentation. - -WARN_NO_PARAMDOC = NO - -# The WARN_FORMAT tag determines the format of the warning messages that -# doxygen can produce. The string should contain the $file, $line, and $text -# tags, which will be replaced by the file and line number from which the -# warning originated and the warning text. Optionally the format may contain -# $version, which will be replaced by the version of the file (if it could -# be obtained via FILE_VERSION_FILTER) - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning -# and error messages should be written. If left blank the output is written -# to stderr. - -WARN_LOGFILE = - -#--------------------------------------------------------------------------- -# configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag can be used to specify the files and/or directories that contain -# documented source files. You may enter file names like "myfile.cpp" or -# directories like "/usr/src/myproject". Separate the files or directories -# with spaces. - -INPUT = "src", "include/svo" - -# This tag can be used to specify the character encoding of the source files -# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is -# also the default input encoding. Doxygen uses libiconv (or the iconv built -# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for -# the list of possible encodings. - -INPUT_ENCODING = UTF-8 - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank the following patterns are tested: -# *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh -# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py -# *.f90 *.f *.for *.vhd *.vhdl - -FILE_PATTERNS = - -# The RECURSIVE tag can be used to turn specify whether or not subdirectories -# should be searched for input files as well. Possible values are YES and NO. -# If left blank NO is used. - -RECURSIVE = NO - -# The EXCLUDE tag can be used to specify files and/or directories that should be -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. -# Note that relative paths are relative to the directory from which doxygen is -# run. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or -# directories that are symbolic links (a Unix file system feature) are excluded -# from the input. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. Note that the wildcards are matched -# against the file with absolute path, so to exclude all test directories -# for example use the pattern */test/* - -EXCLUDE_PATTERNS = - -# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names -# (namespaces, classes, functions, etc.) that should be excluded from the -# output. The symbol name can be a fully qualified name, a word, or if the -# wildcard * is used, a substring. Examples: ANamespace, AClass, -# AClass::ANamespace, ANamespace::*Test - -EXCLUDE_SYMBOLS = g2o -EXCLUDE_SYMBOLS += vk - -# The EXAMPLE_PATH tag can be used to specify one or more files or -# directories that contain example code fragments that are included (see -# the \include command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank all files are included. - -EXAMPLE_PATTERNS = - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude -# commands irrespective of the value of the RECURSIVE tag. -# Possible values are YES and NO. If left blank NO is used. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or -# directories that contain image that are included in the documentation (see -# the \image command). - -IMAGE_PATH = - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command , where -# is the value of the INPUT_FILTER tag, and is the name of an -# input file. Doxygen will then use the output that the filter program writes -# to standard output. -# If FILTER_PATTERNS is specified, this tag will be -# ignored. - -INPUT_FILTER = - -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. -# Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. -# The filters are a list of the form: -# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further -# info on how filters are used. If FILTER_PATTERNS is empty or if -# non of the patterns match the file name, INPUT_FILTER is applied. - -FILTER_PATTERNS = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER) will be used to filter the input files when producing source -# files to browse (i.e. when SOURCE_BROWSER is set to YES). - -FILTER_SOURCE_FILES = NO - -# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file -# pattern. A pattern will override the setting for FILTER_PATTERN (if any) -# and it is also possible to disable source filtering for a specific pattern -# using *.ext= (so without naming a filter). This option only has effect when -# FILTER_SOURCE_FILES is enabled. - -FILTER_SOURCE_PATTERNS = - -#--------------------------------------------------------------------------- -# configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will -# be generated. Documented entities will be cross-referenced with these sources. -# Note: To get rid of all source code in the generated output, make sure also -# VERBATIM_HEADERS is set to NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body -# of functions and classes directly in the documentation. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct -# doxygen to hide any special comment blocks from generated source code -# fragments. Normal C and C++ comments will always remain visible. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES -# then for each documented function all documented -# functions referencing it will be listed. - -REFERENCED_BY_RELATION = NO - -# If the REFERENCES_RELATION tag is set to YES -# then for each documented function all documented entities -# called/used by that function will be listed. - -REFERENCES_RELATION = NO - -# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) -# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from -# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will -# link to the source code. -# Otherwise they will link to the documentation. - -REFERENCES_LINK_SOURCE = YES - -# If the USE_HTAGS tag is set to YES then the references to source code -# will point to the HTML generated by the htags(1) tool instead of doxygen -# built-in source browser. The htags tool is part of GNU's global source -# tagging system (see http://www.gnu.org/software/global/global.html). You -# will need version 4.8.6 or higher. - -USE_HTAGS = NO - -# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen -# will generate a verbatim copy of the header file for each class for -# which an include is specified. Set to NO to disable this. - -VERBATIM_HEADERS = YES - -#--------------------------------------------------------------------------- -# configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index -# of all compounds will be generated. Enable this if the project -# contains a lot of classes, structs, unions or interfaces. - -ALPHABETICAL_INDEX = YES - -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns -# in which this list will be split (can be a number in the range [1..20]) - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all -# classes will be put under the same header in the alphabetical index. -# The IGNORE_PREFIX tag can be used to specify one or more prefixes that -# should be ignored while generating the index headers. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will -# generate HTML output. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `html' will be used as the default path. - -HTML_OUTPUT = html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank -# doxygen will generate files with .html extension. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a personal HTML header for -# each generated HTML page. If it is left blank doxygen will generate a -# standard header. Note that when using a custom header you are responsible -# for the proper inclusion of any scripts and style sheets that doxygen -# needs, which is dependent on the configuration options used. -# It is advised to generate a default header using "doxygen -w html -# header.html footer.html stylesheet.css YourConfigFile" and then modify -# that header. Note that the header is subject to change so you typically -# have to redo this when upgrading to a newer version of doxygen or when -# changing the value of configuration settings such as GENERATE_TREEVIEW! - -HTML_HEADER = - -# The HTML_FOOTER tag can be used to specify a personal HTML footer for -# each generated HTML page. If it is left blank doxygen will generate a -# standard footer. - -HTML_FOOTER = - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading -# style sheet that is used by each HTML page. It can be used to -# fine-tune the look of the HTML output. If the tag is left blank doxygen -# will generate a default style sheet. Note that doxygen will try to copy -# the style sheet file to the HTML output directory, so don't put your own -# style sheet in the HTML output directory as well, or it will be erased! - -HTML_STYLESHEET = - -# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or -# other source files which should be copied to the HTML output directory. Note -# that these files will be copied to the base HTML output directory. Use the -# $relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these -# files. In the HTML_STYLESHEET file, use the file name only. Also note that -# the files will be copied as-is; there are no commands or markers available. - -HTML_EXTRA_FILES = - -# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. -# Doxygen will adjust the colors in the style sheet and background images -# according to this color. Hue is specified as an angle on a colorwheel, -# see http://en.wikipedia.org/wiki/Hue for more information. -# For instance the value 0 represents red, 60 is yellow, 120 is green, -# 180 is cyan, 240 is blue, 300 purple, and 360 is red again. -# The allowed range is 0 to 359. - -HTML_COLORSTYLE_HUE = 220 - -# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of -# the colors in the HTML output. For a value of 0 the output will use -# grayscales only. A value of 255 will produce the most vivid colors. - -HTML_COLORSTYLE_SAT = 100 - -# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to -# the luminance component of the colors in the HTML output. Values below -# 100 gradually make the output lighter, whereas values above 100 make -# the output darker. The value divided by 100 is the actual gamma applied, -# so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2, -# and 100 does not change the gamma. - -HTML_COLORSTYLE_GAMMA = 80 - -# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -# page will contain the date and time when the page was generated. Setting -# this to NO can help when comparing the output of multiple runs. - -HTML_TIMESTAMP = YES - -# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, -# files or namespaces will be aligned in HTML using tables. If set to -# NO a bullet list will be used. - -HTML_ALIGN_MEMBERS = YES - -# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML -# documentation will contain sections that can be hidden and shown after the -# page has loaded. For this to work a browser that supports -# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox -# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). - -HTML_DYNAMIC_SECTIONS = NO - -# If the GENERATE_DOCSET tag is set to YES, additional index files -# will be generated that can be used as input for Apple's Xcode 3 -# integrated development environment, introduced with OSX 10.5 (Leopard). -# To create a documentation set, doxygen will generate a Makefile in the -# HTML output directory. Running make will produce the docset in that -# directory and running "make install" will install the docset in -# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find -# it at startup. -# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html -# for more information. - -GENERATE_DOCSET = NO - -# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the -# feed. A documentation feed provides an umbrella under which multiple -# documentation sets from a single provider (such as a company or product suite) -# can be grouped. - -DOCSET_FEEDNAME = "Doxygen generated docs" - -# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that -# should uniquely identify the documentation set bundle. This should be a -# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen -# will append .docset to the name. - -DOCSET_BUNDLE_ID = org.doxygen.Project - -# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify -# the documentation publisher. This should be a reverse domain-name style -# string, e.g. com.mycompany.MyDocSet.documentation. - -DOCSET_PUBLISHER_ID = org.doxygen.Publisher - -# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. - -DOCSET_PUBLISHER_NAME = Publisher - -# If the GENERATE_HTMLHELP tag is set to YES, additional index files -# will be generated that can be used as input for tools like the -# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) -# of the generated HTML documentation. - -GENERATE_HTMLHELP = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can -# be used to specify the file name of the resulting .chm file. You -# can add a path in front of the file if the result should not be -# written to the html output directory. - -CHM_FILE = - -# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can -# be used to specify the location (absolute path including file name) of -# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run -# the HTML help compiler on the generated index.hhp. - -HHC_LOCATION = - -# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag -# controls if a separate .chi index file is generated (YES) or that -# it should be included in the master .chm file (NO). - -GENERATE_CHI = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING -# is used to encode HtmlHelp index (hhk), content (hhc) and project file -# content. - -CHM_INDEX_ENCODING = - -# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag -# controls whether a binary table of contents is generated (YES) or a -# normal table of contents (NO) in the .chm file. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members -# to the contents of the HTML help documentation and to the tree view. - -TOC_EXPAND = NO - -# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and -# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated -# that can be used as input for Qt's qhelpgenerator to generate a -# Qt Compressed Help (.qch) of the generated HTML documentation. - -GENERATE_QHP = NO - -# If the QHG_LOCATION tag is specified, the QCH_FILE tag can -# be used to specify the file name of the resulting .qch file. -# The path specified is relative to the HTML output folder. - -QCH_FILE = - -# The QHP_NAMESPACE tag specifies the namespace to use when generating -# Qt Help Project output. For more information please see -# http://doc.trolltech.com/qthelpproject.html#namespace - -QHP_NAMESPACE = org.doxygen.Project - -# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating -# Qt Help Project output. For more information please see -# http://doc.trolltech.com/qthelpproject.html#virtual-folders - -QHP_VIRTUAL_FOLDER = doc - -# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to -# add. For more information please see -# http://doc.trolltech.com/qthelpproject.html#custom-filters - -QHP_CUST_FILTER_NAME = - -# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the -# custom filter to add. For more information please see -# -# Qt Help Project / Custom Filters. - -QHP_CUST_FILTER_ATTRS = - -# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this -# project's -# filter section matches. -# -# Qt Help Project / Filter Attributes. - -QHP_SECT_FILTER_ATTRS = - -# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can -# be used to specify the location of Qt's qhelpgenerator. -# If non-empty doxygen will try to run qhelpgenerator on the generated -# .qhp file. - -QHG_LOCATION = - -# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files -# will be generated, which together with the HTML files, form an Eclipse help -# plugin. To install this plugin and make it available under the help contents -# menu in Eclipse, the contents of the directory containing the HTML and XML -# files needs to be copied into the plugins directory of eclipse. The name of -# the directory within the plugins directory should be the same as -# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before -# the help appears. - -GENERATE_ECLIPSEHELP = NO - -# A unique identifier for the eclipse help plugin. When installing the plugin -# the directory name containing the HTML and XML files should also have -# this name. - -ECLIPSE_DOC_ID = org.doxygen.Project - -# The DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) -# at top of each HTML page. The value NO (the default) enables the index and -# the value YES disables it. Since the tabs have the same information as the -# navigation tree you can set this option to NO if you already set -# GENERATE_TREEVIEW to YES. - -DISABLE_INDEX = NO - -# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index -# structure should be generated to display hierarchical information. -# If the tag value is set to YES, a side panel will be generated -# containing a tree-like index structure (just like the one that -# is generated for HTML Help). For this to work a browser that supports -# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). -# Windows users are probably better off using the HTML help feature. -# Since the tree basically has the same information as the tab index you -# could consider to set DISABLE_INDEX to NO when enabling this option. - -GENERATE_TREEVIEW = NO - -# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values -# (range [0,1..20]) that doxygen will group on one line in the generated HTML -# documentation. Note that a value of 0 will completely suppress the enum -# values from appearing in the overview section. - -ENUM_VALUES_PER_LINE = 4 - -# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, -# and Class Hierarchy pages using a tree view instead of an ordered list. - -USE_INLINE_TREES = NO - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be -# used to set the initial width (in pixels) of the frame in which the tree -# is shown. - -TREEVIEW_WIDTH = 250 - -# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open -# links to external symbols imported via tag files in a separate window. - -EXT_LINKS_IN_WINDOW = NO - -# Use this tag to change the font size of Latex formulas included -# as images in the HTML documentation. The default is 10. Note that -# when you change the font size after a successful doxygen run you need -# to manually remove any form_*.png images from the HTML output directory -# to force them to be regenerated. - -FORMULA_FONTSIZE = 10 - -# Use the FORMULA_TRANPARENT tag to determine whether or not the images -# generated for formulas are transparent PNGs. Transparent PNGs are -# not supported properly for IE 6.0, but are supported on all modern browsers. -# Note that when changing this option you need to delete any form_*.png files -# in the HTML output before the changes have effect. - -FORMULA_TRANSPARENT = YES - -# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax -# (see http://www.mathjax.org) which uses client side Javascript for the -# rendering instead of using prerendered bitmaps. Use this if you do not -# have LaTeX installed or if you want to formulas look prettier in the HTML -# output. When enabled you also need to install MathJax separately and -# configure the path to it using the MATHJAX_RELPATH option. - -USE_MATHJAX = NO - -# When MathJax is enabled you need to specify the location relative to the -# HTML output directory using the MATHJAX_RELPATH option. The destination -# directory should contain the MathJax.js script. For instance, if the mathjax -# directory is located at the same level as the HTML output directory, then -# MATHJAX_RELPATH should be ../mathjax. The default value points to the -# mathjax.org site, so you can quickly see the result without installing -# MathJax, but it is strongly recommended to install a local copy of MathJax -# before deployment. - -MATHJAX_RELPATH = http://www.mathjax.org/mathjax - -# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension -# names that should be enabled during MathJax rendering. - -MATHJAX_EXTENSIONS = - -# When the SEARCHENGINE tag is enabled doxygen will generate a search box -# for the HTML output. The underlying search engine uses javascript -# and DHTML and should work on any modern browser. Note that when using -# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets -# (GENERATE_DOCSET) there is already a search function so this one should -# typically be disabled. For large projects the javascript based search engine -# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution. - -SEARCHENGINE = YES - -# When the SERVER_BASED_SEARCH tag is enabled the search engine will be -# implemented using a PHP enabled web server instead of at the web client -# using Javascript. Doxygen will generate the search PHP script and index -# file to put on the web server. The advantage of the server -# based approach is that it scales better to large projects and allows -# full text search. The disadvantages are that it is more difficult to setup -# and does not have live searching capabilities. - -SERVER_BASED_SEARCH = NO - -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- - -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will -# generate Latex output. - -GENERATE_LATEX = YES - -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `latex' will be used as the default path. - -LATEX_OUTPUT = latex - -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be -# invoked. If left blank `latex' will be used as the default command name. -# Note that when enabling USE_PDFLATEX this option is only used for -# generating bitmaps for formulas in the HTML output, but not in the -# Makefile that is written to the output directory. - -LATEX_CMD_NAME = latex - -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to -# generate index for LaTeX. If left blank `makeindex' will be used as the -# default command name. - -MAKEINDEX_CMD_NAME = makeindex - -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact -# LaTeX documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_LATEX = NO - -# The PAPER_TYPE tag can be used to set the paper type that is used -# by the printer. Possible values are: a4, letter, legal and -# executive. If left blank a4wide will be used. - -PAPER_TYPE = a4 - -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX -# packages that should be included in the LaTeX output. - -EXTRA_PACKAGES = - -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for -# the generated latex document. The header should contain everything until -# the first chapter. If it is left blank doxygen will generate a -# standard header. Notice: only use this tag if you know what you are doing! - -LATEX_HEADER = - -# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for -# the generated latex document. The footer should contain everything after -# the last chapter. If it is left blank doxygen will generate a -# standard footer. Notice: only use this tag if you know what you are doing! - -LATEX_FOOTER = - -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated -# is prepared for conversion to pdf (using ps2pdf). The pdf file will -# contain links (just like the HTML output) instead of page references -# This makes the output suitable for online browsing using a pdf viewer. - -PDF_HYPERLINKS = YES - -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of -# plain latex in the generated Makefile. Set this option to YES to get a -# higher quality PDF documentation. - -USE_PDFLATEX = YES - -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. -# command to the generated LaTeX files. This will instruct LaTeX to keep -# running if errors occur, instead of asking the user for help. -# This option is also used when generating formulas in HTML. - -LATEX_BATCHMODE = NO - -# If LATEX_HIDE_INDICES is set to YES then doxygen will not -# include the index chapters (such as File Index, Compound Index, etc.) -# in the output. - -LATEX_HIDE_INDICES = NO - -# If LATEX_SOURCE_CODE is set to YES then doxygen will include -# source code with syntax highlighting in the LaTeX output. -# Note that which sources are shown also depends on other settings -# such as SOURCE_BROWSER. - -LATEX_SOURCE_CODE = NO - -# The LATEX_BIB_STYLE tag can be used to specify the style to use for the -# bibliography, e.g. plainnat, or ieeetr. The default style is "plain". See -# http://en.wikipedia.org/wiki/BibTeX for more info. - -LATEX_BIB_STYLE = plain - -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- - -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output -# The RTF output is optimized for Word 97 and may not look very pretty with -# other RTF readers or editors. - -GENERATE_RTF = NO - -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `rtf' will be used as the default path. - -RTF_OUTPUT = rtf - -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact -# RTF documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_RTF = NO - -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated -# will contain hyperlink fields. The RTF file will -# contain links (just like the HTML output) instead of page references. -# This makes the output suitable for online browsing using WORD or other -# programs which support those fields. -# Note: wordpad (write) and others do not support links. - -RTF_HYPERLINKS = NO - -# Load style sheet definitions from file. Syntax is similar to doxygen's -# config file, i.e. a series of assignments. You only have to provide -# replacements, missing definitions are set to their default value. - -RTF_STYLESHEET_FILE = - -# Set optional variables used in the generation of an rtf document. -# Syntax is similar to doxygen's config file. - -RTF_EXTENSIONS_FILE = - -#--------------------------------------------------------------------------- -# configuration options related to the man page output -#--------------------------------------------------------------------------- - -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will -# generate man pages - -GENERATE_MAN = NO - -# The MAN_OUTPUT tag is used to specify where the man pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `man' will be used as the default path. - -MAN_OUTPUT = man - -# The MAN_EXTENSION tag determines the extension that is added to -# the generated man pages (default is the subroutine's section .3) - -MAN_EXTENSION = .3 - -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, -# then it will generate one additional man file for each entity -# documented in the real man page(s). These additional files -# only source the real man page, but without them the man command -# would be unable to find the correct page. The default is NO. - -MAN_LINKS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the XML output -#--------------------------------------------------------------------------- - -# If the GENERATE_XML tag is set to YES Doxygen will -# generate an XML file that captures the structure of -# the code including all documentation. - -GENERATE_XML = NO - -# The XML_OUTPUT tag is used to specify where the XML pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `xml' will be used as the default path. - -XML_OUTPUT = xml - -# The XML_SCHEMA tag can be used to specify an XML schema, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_SCHEMA = - -# The XML_DTD tag can be used to specify an XML DTD, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_DTD = - -# If the XML_PROGRAMLISTING tag is set to YES Doxygen will -# dump the program listings (including syntax highlighting -# and cross-referencing information) to the XML output. Note that -# enabling this will significantly increase the size of the XML output. - -XML_PROGRAMLISTING = YES - -#--------------------------------------------------------------------------- -# configuration options for the AutoGen Definitions output -#--------------------------------------------------------------------------- - -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will -# generate an AutoGen Definitions (see autogen.sf.net) file -# that captures the structure of the code including all -# documentation. Note that this feature is still experimental -# and incomplete at the moment. - -GENERATE_AUTOGEN_DEF = NO - -#--------------------------------------------------------------------------- -# configuration options related to the Perl module output -#--------------------------------------------------------------------------- - -# If the GENERATE_PERLMOD tag is set to YES Doxygen will -# generate a Perl module file that captures the structure of -# the code including all documentation. Note that this -# feature is still experimental and incomplete at the -# moment. - -GENERATE_PERLMOD = NO - -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate -# the necessary Makefile rules, Perl scripts and LaTeX code to be able -# to generate PDF and DVI output from the Perl module output. - -PERLMOD_LATEX = NO - -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be -# nicely formatted so it can be parsed by a human reader. -# This is useful -# if you want to understand what is going on. -# On the other hand, if this -# tag is set to NO the size of the Perl module output will be much smaller -# and Perl will parse it just the same. - -PERLMOD_PRETTY = YES - -# The names of the make variables in the generated doxyrules.make file -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. -# This is useful so different doxyrules.make files included by the same -# Makefile don't overwrite each other's variables. - -PERLMOD_MAKEVAR_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the preprocessor -#--------------------------------------------------------------------------- - -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will -# evaluate all C-preprocessor directives found in the sources and include -# files. - -ENABLE_PREPROCESSING = YES - -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro -# names in the source code. If set to NO (the default) only conditional -# compilation will be performed. Macro expansion can be done in a controlled -# way by setting EXPAND_ONLY_PREDEF to YES. - -MACRO_EXPANSION = NO - -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES -# then the macro expansion is limited to the macros specified with the -# PREDEFINED and EXPAND_AS_DEFINED tags. - -EXPAND_ONLY_PREDEF = NO - -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files -# pointed to by INCLUDE_PATH will be searched when a #include is found. - -SEARCH_INCLUDES = YES - -# The INCLUDE_PATH tag can be used to specify one or more directories that -# contain include files that are not input files but should be processed by -# the preprocessor. - -INCLUDE_PATH = - -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard -# patterns (like *.h and *.hpp) to filter out the header-files in the -# directories. If left blank, the patterns specified with FILE_PATTERNS will -# be used. - -INCLUDE_FILE_PATTERNS = - -# The PREDEFINED tag can be used to specify one or more macro names that -# are defined before the preprocessor is started (similar to the -D option of -# gcc). The argument of the tag is a list of macros of the form: name -# or name=definition (no spaces). If the definition and the = are -# omitted =1 is assumed. To prevent a macro definition from being -# undefined via #undef or recursively expanded use the := operator -# instead of the = operator. - -PREDEFINED = - -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then -# this tag can be used to specify a list of macro names that should be expanded. -# The macro definition that is found in the sources will be used. -# Use the PREDEFINED tag if you want to use a different macro definition that -# overrules the definition found in the source code. - -EXPAND_AS_DEFINED = - -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then -# doxygen's preprocessor will remove all references to function-like macros -# that are alone on a line, have an all uppercase name, and do not end with a -# semicolon, because these will confuse the parser if not removed. - -SKIP_FUNCTION_MACROS = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to external references -#--------------------------------------------------------------------------- - -# The TAGFILES option can be used to specify one or more tagfiles. -# Optionally an initial location of the external documentation -# can be added for each tagfile. The format of a tag file without -# this location is as follows: -# -# TAGFILES = file1 file2 ... -# Adding location for the tag files is done as follows: -# -# TAGFILES = file1=loc1 "file2 = loc2" ... -# where "loc1" and "loc2" can be relative or absolute paths or -# URLs. If a location is present for each tag, the installdox tool -# does not have to be run to correct the links. -# Note that each tag file must have a unique name -# (where the name does NOT include the path) -# If a tag file is not located in the directory in which doxygen -# is run, you must also specify the path to the tagfile here. - -TAGFILES = - -# When a file name is specified after GENERATE_TAGFILE, doxygen will create -# a tag file that is based on the input files it reads. - -GENERATE_TAGFILE = - -# If the ALLEXTERNALS tag is set to YES all external classes will be listed -# in the class index. If set to NO only the inherited external classes -# will be listed. - -ALLEXTERNALS = NO - -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed -# in the modules index. If set to NO, only the current project's groups will -# be listed. - -EXTERNAL_GROUPS = YES - -# The PERL_PATH should be the absolute path and name of the perl script -# interpreter (i.e. the result of `which perl'). - -PERL_PATH = /usr/bin/perl - -#--------------------------------------------------------------------------- -# Configuration options related to the dot tool -#--------------------------------------------------------------------------- - -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base -# or super classes. Setting the tag to NO turns the diagrams off. Note that -# this option also works with HAVE_DOT disabled, but it is recommended to -# install and use dot, since it yields more powerful graphs. - -CLASS_DIAGRAMS = YES - -# You can define message sequence charts within doxygen comments using the \msc -# command. Doxygen will then run the mscgen tool (see -# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the -# documentation. The MSCGEN_PATH tag allows you to specify the directory where -# the mscgen tool resides. If left empty the tool is assumed to be found in the -# default search path. - -MSCGEN_PATH = - -# If set to YES, the inheritance and collaboration graphs will hide -# inheritance and usage relations if the target is undocumented -# or is not a class. - -HIDE_UNDOC_RELATIONS = YES - -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is -# available from the path. This tool is part of Graphviz, a graph visualization -# toolkit from AT&T and Lucent Bell Labs. The other options in this section -# have no effect if this option is set to NO (the default) - -HAVE_DOT = NO - -# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is -# allowed to run in parallel. When set to 0 (the default) doxygen will -# base this on the number of processors available in the system. You can set it -# explicitly to a value larger than 0 to get control over the balance -# between CPU load and processing speed. - -DOT_NUM_THREADS = 0 - -# By default doxygen will use the Helvetica font for all dot files that -# doxygen generates. When you want a differently looking font you can specify -# the font name using DOT_FONTNAME. You need to make sure dot is able to find -# the font, which can be done by putting it in a standard location or by setting -# the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the -# directory containing the font. - -DOT_FONTNAME = Helvetica - -# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. -# The default size is 10pt. - -DOT_FONTSIZE = 10 - -# By default doxygen will tell dot to use the Helvetica font. -# If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to -# set the path where dot can find it. - -DOT_FONTPATH = - -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect inheritance relations. Setting this tag to YES will force the -# CLASS_DIAGRAMS tag to NO. - -CLASS_GRAPH = YES - -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect implementation dependencies (inheritance, containment, and -# class references variables) of the class with other documented classes. - -COLLABORATION_GRAPH = YES - -# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for groups, showing the direct groups dependencies - -GROUP_GRAPHS = YES - -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and -# collaboration diagrams in a style similar to the OMG's Unified Modeling -# Language. - -UML_LOOK = NO - -# If set to YES, the inheritance and collaboration graphs will show the -# relations between templates and their instances. - -TEMPLATE_RELATIONS = NO - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT -# tags are set to YES then doxygen will generate a graph for each documented -# file showing the direct and indirect include dependencies of the file with -# other documented files. - -INCLUDE_GRAPH = YES - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each -# documented header file showing the documented files that directly or -# indirectly include this file. - -INCLUDED_BY_GRAPH = YES - -# If the CALL_GRAPH and HAVE_DOT options are set to YES then -# doxygen will generate a call dependency graph for every global function -# or class method. Note that enabling this option will significantly increase -# the time of a run. So in most cases it will be better to enable call graphs -# for selected functions only using the \callgraph command. - -CALL_GRAPH = NO - -# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then -# doxygen will generate a caller dependency graph for every global function -# or class method. Note that enabling this option will significantly increase -# the time of a run. So in most cases it will be better to enable caller -# graphs for selected functions only using the \callergraph command. - -CALLER_GRAPH = NO - -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen -# will generate a graphical hierarchy of all classes instead of a textual one. - -GRAPHICAL_HIERARCHY = YES - -# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES -# then doxygen will show the dependencies a directory has on other directories -# in a graphical way. The dependency relations are determined by the #include -# relations between the files in the directories. - -DIRECTORY_GRAPH = YES - -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -# generated by dot. Possible values are svg, png, jpg, or gif. -# If left blank png will be used. If you choose svg you need to set -# HTML_FILE_EXTENSION to xhtml in order to make the SVG files -# visible in IE 9+ (other browsers do not have this requirement). - -DOT_IMAGE_FORMAT = png - -# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to -# enable generation of interactive SVG images that allow zooming and panning. -# Note that this requires a modern browser other than Internet Explorer. -# Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you -# need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files -# visible. Older versions of IE do not have SVG support. - -INTERACTIVE_SVG = NO - -# The tag DOT_PATH can be used to specify the path where the dot tool can be -# found. If left blank, it is assumed the dot tool can be found in the path. - -DOT_PATH = - -# The DOTFILE_DIRS tag can be used to specify one or more directories that -# contain dot files that are included in the documentation (see the -# \dotfile command). - -DOTFILE_DIRS = - -# The MSCFILE_DIRS tag can be used to specify one or more directories that -# contain msc files that are included in the documentation (see the -# \mscfile command). - -MSCFILE_DIRS = - -# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of -# nodes that will be shown in the graph. If the number of nodes in a graph -# becomes larger than this value, doxygen will truncate the graph, which is -# visualized by representing a node as a red box. Note that doxygen if the -# number of direct children of the root node in a graph is already larger than -# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note -# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. - -DOT_GRAPH_MAX_NODES = 50 - -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the -# graphs generated by dot. A depth value of 3 means that only nodes reachable -# from the root by following a path via at most 3 edges will be shown. Nodes -# that lay further from the root node will be omitted. Note that setting this -# option to 1 or 2 may greatly reduce the computation time needed for large -# code bases. Also note that the size of a graph can be further restricted by -# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. - -MAX_DOT_GRAPH_DEPTH = 0 - -# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent -# background. This is disabled by default, because dot on Windows does not -# seem to support this out of the box. Warning: Depending on the platform used, -# enabling this option may lead to badly anti-aliased labels on the edges of -# a graph (i.e. they become hard to read). - -DOT_TRANSPARENT = NO - -# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output -# files in one run (i.e. multiple -o and -T options on the command line). This -# makes dot run faster, but since only newer versions of dot (>1.8.10) -# support this, this feature is disabled by default. - -DOT_MULTI_TARGETS = YES - -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will -# generate a legend page explaining the meaning of the various boxes and -# arrows in the dot generated graphs. - -GENERATE_LEGEND = YES - -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will -# remove the intermediate dot files that are used to generate -# the various graphs. - -DOT_CLEANUP = YES diff --git a/CPU_version/svo/doc/.gitignore b/CPU_version/svo/doc/.gitignore deleted file mode 100644 index cf57c3b..0000000 --- a/CPU_version/svo/doc/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -.gitignore -!.gitignore \ No newline at end of file diff --git a/CPU_version/svo/doc/notation.ipe b/CPU_version/svo/doc/notation.ipe deleted file mode 100644 index f8c1efe..0000000 --- a/CPU_version/svo/doc/notation.ipe +++ /dev/null @@ -1,312 +0,0 @@ - - - - - - - -0 0 m --1 0.333 l --1 -0.333 l -h - - - - -0 0 m --1 0.333 l --1 -0.333 l -h - - - - -0.6 0 0 0.6 0 0 e -0.4 0 0 0.4 0 0 e - - - - -0.6 0 0 0.6 0 0 e - - - - - -0.6 0 0 0.6 0 0 e -0.4 0 0 0.4 0 0 e - - -0.4 0 0 0.4 0 0 e - - - - - --0.6 -0.6 m -0.6 -0.6 l -0.6 0.6 l --0.6 0.6 l -h --0.4 -0.4 m -0.4 -0.4 l -0.4 0.4 l --0.4 0.4 l -h - - - - --0.6 -0.6 m -0.6 -0.6 l -0.6 0.6 l --0.6 0.6 l -h - - - - - --0.6 -0.6 m -0.6 -0.6 l -0.6 0.6 l --0.6 0.6 l -h --0.4 -0.4 m -0.4 -0.4 l -0.4 0.4 l --0.4 0.4 l -h - - --0.4 -0.4 m -0.4 -0.4 l -0.4 0.4 l --0.4 0.4 l -h - - - - - - --0.43 -0.57 m -0.57 0.43 l -0.43 0.57 l --0.57 -0.43 l -h - - --0.43 0.57 m -0.57 -0.43 l -0.43 -0.57 l --0.57 0.43 l -h - - - - - -0 0 m --1 0.333 l --1 -0.333 l -h - - - - -0 0 m --1 0.333 l --0.8 0 l --1 -0.333 l -h - - - - -0 0 m --1 0.333 l --0.8 0 l --1 -0.333 l -h - - - - --1 0.333 m -0 0 l --1 -0.333 l - - - - -0 0 m --1 0.333 l --1 -0.333 l -h --1 0 m --2 0.333 l --2 -0.333 l -h - - - - -0 0 m --1 0.333 l --1 -0.333 l -h --1 0 m --2 0.333 l --2 -0.333 l -h - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -$_w\mathtt{p}$ -$\overrightarrow{\mathcal{F}}_w$ - -64 576 m -96 576 l - - -64 576 m -64 608 l - - -64 576 m -80 592 l - - -144 688 m -176 688 l - - -144 688 m -144 720 l - - -144 688 m -160 704 l - - -285.262 759.615 m -162.017 735.456 -129.232 628.801 s - - -$\mathtt{T}_{f,w}$ - -128.441 626.745 m -320.625 647.224 l - - -331.681 587.399 m -331.681 587.399 l - -$x$ -$z$ -$y$ - -256 736 m -224 704 l -320 704 l -352 736 l -h - - -285.262 759.265 m -322.176 651.119 l - -$\mathtt{px}$ - -285.612 758.915 m -315.723 669.632 l - -$\mathtt{f}$ -$\overrightarrow{\mathcal{F}}_f$ - -255.668 719.918 m -274.728 719.957 l - - -256.107 720.028 m -246.655 710.527 l - -$v$ -$u$ - -$\mathbf{p}$ -$_f\mathtt{p}$ - - diff --git a/CPU_version/svo/doc/notation.pdf b/CPU_version/svo/doc/notation.pdf deleted file mode 100644 index 3bc3fcd1e26432ecb0bbd75ccac1399691cf3da1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 50379 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 diff --git a/CPU_version/svo/doc/notation.png b/CPU_version/svo/doc/notation.png deleted file mode 100644 index d613b70c287aff422211aaede98b677578c69bda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27376 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 -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_BUNDLE_ADJUSTMENT_H_ -#define SVO_BUNDLE_ADJUSTMENT_H_ - -#include - -namespace g2o { -class EdgeProjectXYZ2UV; -class SparseOptimizer; -class VertexSE3Expmap; -class VertexSBAPointXYZ; -} - -namespace svo { - -typedef g2o::EdgeProjectXYZ2UV g2oEdgeSE3; -typedef g2o::VertexSE3Expmap g2oFrameSE3; -typedef g2o::VertexSBAPointXYZ g2oPoint; - -class Frame; -class Point; -class Feature; -class Map; - -/// Local, global and 2-view bundle adjustment with g2o -namespace ba { - -/// Temporary container to hold the g2o edge with reference to frame and point. -struct EdgeContainerSE3 -{ - g2oEdgeSE3* edge; - Frame* frame; - Feature* feature; - bool is_deleted; - EdgeContainerSE3(g2oEdgeSE3* e, Frame* frame, Feature* feature) : - edge(e), frame(frame), feature(feature), is_deleted(false) - {} -}; - -/// Optimize two camera frames and their observed 3D points. -/// Is used after initialization. -void twoViewBA(Frame* frame1, Frame* frame2, double reproj_thresh, Map* map); - -/// Local bundle adjustment. -/// Optimizes core_kfs and their observed map points while keeping the -/// neighbourhood fixed. -void localBA( - Frame* center_kf, - set* core_kfs, - Map* map, - size_t& n_incorrect_edges_1, - size_t& n_incorrect_edges_2, - double& init_error, - double& final_error); - -/// Global bundle adjustment. -/// Optimizes the whole map. Is currently not used in SVO. -void globalBA(Map* map); - -/// Initialize g2o with solver type, optimization strategy and camera model. -void setupG2o(g2o::SparseOptimizer * optimizer); - -/// Run the optimization on the provided graph. -void runSparseBAOptimizer( - g2o::SparseOptimizer* optimizer, - unsigned int num_iter, - double& init_error, - double& final_error); - -/// Create a g2o vertice from a keyframe object. -g2oFrameSE3* createG2oFrameSE3( - Frame* kf, - size_t id, - bool fixed); - -/// Creates a g2o vertice from a mappoint object. -g2oPoint* createG2oPoint( - Vector3d pos, - size_t id, - bool fixed); - -/// Creates a g2o edge between a g2o keyframe and mappoint vertice with the provided measurement. -g2oEdgeSE3* createG2oEdgeSE3( - g2oFrameSE3* v_kf, - g2oPoint* v_mp, - const Vector2d& f_up, - bool robust_kernel, - double huber_width, - double weight = 1); - -} // namespace ba -} // namespace svo - -#endif // SVO_BUNDLE_ADJUSTMENT_H_ diff --git a/CPU_version/svo/include/svo/config.h b/CPU_version/svo/include/svo/config.h deleted file mode 100644 index e1c97b1..0000000 --- a/CPU_version/svo/include/svo/config.h +++ /dev/null @@ -1,177 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_CONFIG_H_ -#define SVO_CONFIG_H_ - -#include -#include -#include - -namespace svo { - -using std::string; - -/// Global configuration file of SVO. -/// Implements the Singleton design pattern to allow global access and to ensure -/// that only one instance exists. -class Config -{ -public: - static Config& getInstance(); - - /// Base-name of the tracefiles. - static string& traceName() { return getInstance().trace_name; } - - /// Directory where the tracefiles are saved. - static string& traceDir() { return getInstance().trace_dir; } - - /// Number of pyramid levels used for features. - static size_t& nPyrLevels() { return getInstance().n_pyr_levels; } - - /// Use the IMU to get relative rotations. - static bool& useImu() { return getInstance().use_imu; } - - /// Number of keyframes in the core. The core-kfs are optimized through bundle adjustment. - static size_t& coreNKfs() { return getInstance().core_n_kfs; } - - /// Initial scale of the map. Depends on the distance the camera is moved for the initialization. - static double& mapScale() { return getInstance().map_scale; } - - /// Feature grid size of a cell in [px]. - static size_t& gridSize() { return getInstance().grid_size; } - - /// Initialization: Minimum required disparity between the first two frames. - static double& initMinDisparity() { return getInstance().init_min_disparity; } - - /// Initialization: Minimum number of tracked features. - static size_t& initMinTracked() { return getInstance().init_min_tracked; } - - /// Initialization: Minimum number of inliers after RANSAC. - static size_t& initMinInliers() { return getInstance().init_min_inliers; } - - /// Maximum level of the Lucas Kanade tracker. - static size_t& kltMaxLevel() { return getInstance().klt_max_level; } - - /// Minimum level of the Lucas Kanade tracker. - static size_t& kltMinLevel() { return getInstance().klt_min_level; } - - /// Reprojection threshold [px]. - static double& reprojThresh() { return getInstance().reproj_thresh; } - - /// Reprojection threshold after pose optimization. - static double& poseOptimThresh() { return getInstance().poseoptim_thresh; } - - /// Number of iterations in local bundle adjustment. - static size_t& poseOptimNumIter() { return getInstance().poseoptim_num_iter; } - - /// Maximum number of points to optimize at every iteration. - static size_t& structureOptimMaxPts() { return getInstance().structureoptim_max_pts; } - - /// Number of iterations in structure optimization. - static size_t& structureOptimNumIter() { return getInstance().structureoptim_num_iter; } - - /// Reprojection threshold after bundle adjustment. - static double& lobaThresh() { return getInstance().loba_thresh; } - - /// Threshold for the robust Huber kernel of the local bundle adjustment. - static double& lobaRobustHuberWidth() { return getInstance().loba_robust_huber_width; } - - /// Number of iterations in the local bundle adjustment. - static size_t& lobaNumIter() { return getInstance().loba_num_iter; } - - /// Minimum distance between two keyframes. Relative to the average height in the map. - static double& kfSelectMinDist() { return getInstance().kfselect_mindist; } - - /// Select only features with a minimum Harris corner score for triangulation. - static double& triangMinCornerScore() { return getInstance().triang_min_corner_score; } - - /// Subpixel refinement of reprojection and triangulation. Set to 0 if no subpix refinement required! - static size_t& subpixNIter() { return getInstance().subpix_n_iter; } - - /// Limit the number of keyframes in the map. This makes nslam essentially. - /// a Visual Odometry. Set to 0 if unlimited number of keyframes are allowed. - /// Minimum number of keyframes is 3. - static size_t& maxNKfs() { return getInstance().max_n_kfs; } - - /// How much (in milliseconds) is the camera delayed with respect to the imu. - static double& imgImuDelay() { return getInstance().img_imu_delay; } - - /// Maximum number of features that should be tracked. - static size_t& maxFts() { return getInstance().max_fts; } - - /// If the number of tracked features drops below this threshold. Tracking quality is bad. - static size_t& qualityMinFts() { return getInstance().quality_min_fts; } - - /// If within one frame, this amount of features are dropped. Tracking quality is bad. - static int& qualityMaxFtsDrop() { return getInstance().quality_max_drop_fts; } - - /// acc white noise in continuous. - static double& ACC_Noise() { return getInstance().ACC_noise; } - - /// acc white noise in continuous. - static double& GYO_Noise() { return getInstance().GYO_noise; } - /// integration uncertainty continuous - static double& IUC() { return getInstance().iuc; } - // acc bias in continuous - static double& ABC() { return getInstance().abc; } - // gyro bias in continuous - static double& GBC() { return getInstance().gbc; } - // error in the bias used for preintegration - static double& EBP() { return getInstance().ebp; } - // the noise used for projection - static double& NRP() { return getInstance().nrp; } - - -private: - Config(); - Config(Config const&); - void operator=(Config const&); - string trace_name; - string trace_dir; - size_t n_pyr_levels; - bool use_imu; - size_t core_n_kfs; - double map_scale; - size_t grid_size; - double init_min_disparity; - size_t init_min_tracked; - size_t init_min_inliers; - size_t klt_max_level; - size_t klt_min_level; - double reproj_thresh; - double poseoptim_thresh; - size_t poseoptim_num_iter; - size_t structureoptim_max_pts; - size_t structureoptim_num_iter; - double loba_thresh; - double loba_robust_huber_width; - size_t loba_num_iter; - double kfselect_mindist; - double triang_min_corner_score; - size_t triang_half_patch_size; - size_t subpix_n_iter; - size_t max_n_kfs; - double img_imu_delay; - size_t max_fts; - size_t quality_min_fts; - int quality_max_drop_fts; - double nrp,ebp,gbc,abc,iuc,ACC_noise,GYO_noise; -}; - -} // namespace svo - -#endif // SVO_CONFIG_H_ diff --git a/CPU_version/svo/include/svo/depth_filter.h b/CPU_version/svo/include/svo/depth_filter.h deleted file mode 100644 index 1612d0e..0000000 --- a/CPU_version/svo/include/svo/depth_filter.h +++ /dev/null @@ -1,171 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_DEPTH_FILTER_H_ -#define SVO_DEPTH_FILTER_H_ - -#include -#include -#include -#include -#include -#include -#include - -namespace svo { - -class Frame; -class Feature; -class Point; - -/// A seed is a probabilistic depth estimate for a single pixel. -struct Seed -{ - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - static int batch_counter; - static int seed_counter; - int batch_id; //!< Batch id is the id of the keyframe for which the seed was created. - int id; //!< Seed ID, only used for visualization. - Feature* ftr; //!< Feature in the keyframe for which the depth should be computed. - float a; //!< a of Beta distribution: When high, probability of inlier is large. - float b; //!< b of Beta distribution: When high, probability of outlier is large. - float mu; //!< Mean of normal distribution. - float z_range; //!< Max range of the possible depth. - float sigma2; //!< Variance of normal distribution. - Matrix2d patch_cov; //!< Patch covariance in reference image. - Seed(Feature* ftr, float depth_mean, float depth_min); -}; - -/// Depth filter implements the Bayesian Update proposed in: -/// "Video-based, Real-Time Multi View Stereo" by G. Vogiatzis and C. Hernández. -/// In Image and Vision Computing, 29(7):434-441, 2011. -/// -/// The class uses a callback mechanism such that it can be used also by other -/// algorithms than nslam and for simplified testing. -class DepthFilter -{ -public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - typedef boost::unique_lock lock_t; - typedef boost::function callback_t; - - /// Depth-filter config parameters - struct Options - { - bool check_ftr_angle; //!< gradient features are only updated if the epipolar line is orthogonal to the gradient. - bool epi_search_1d; //!< restrict Gauss Newton in the epipolar search to the epipolar line. - bool verbose; //!< display output. - bool use_photometric_disparity_error; //!< use photometric disparity error instead of 1px error in tau computation. - int max_n_kfs; //!< maximum number of keyframes for which we maintain seeds. - double sigma_i_sq; //!< image noise. - double seed_convergence_sigma2_thresh; //!< threshold on depth uncertainty for convergence. - Options() - : check_ftr_angle(false), - epi_search_1d(false), - verbose(false), - use_photometric_disparity_error(false), - max_n_kfs(3), - sigma_i_sq(5e-4), - seed_convergence_sigma2_thresh(200.0) - {} - } options_; - - DepthFilter( - feature_detection::DetectorPtr feature_detector, - callback_t seed_converged_cb); - - virtual ~DepthFilter(); - - /// Start this thread when seed updating should be in a parallel thread. - void startThread(); - - /// Stop the parallel thread that is running. - void stopThread(); - - /// Add frame to the queue to be processed. - void addFrame(FramePtr frame); - - /// Add new keyframe to the queue - void addKeyframe(FramePtr frame, double depth_mean, double depth_min); - - /// Remove all seeds which are initialized from the specified keyframe. This - /// function is used to make sure that no seeds points to a non-existent frame - /// when a frame is removed from the map. - void removeKeyframe(FramePtr frame); - - /// If the map is reset, call this function such that we don't have pointers - /// to old frames. - void reset(); - - /// Returns a copy of the seeds belonging to frame. Thread-safe. - /// Can be used to compute the Next-Best-View in parallel. - /// IMPORTANT! Make sure you hold a valid reference counting pointer to frame - /// so it is not being deleted while you use it. - void getSeedsCopy(const FramePtr& frame, std::list& seeds); - - /// Return a reference to the seeds. This is NOT THREAD SAFE! - //std::list& getSeeds() { return seeds_; } Bug 238 - std::list>& getSeeds() { return seeds_; } - - /// Bayes update of the seed, x is the measurement, tau2 the measurement uncertainty - static void updateSeed( - const float x, - const float tau2, - Seed* seed); - - /// Compute the uncertainty of the measurement. - static double computeTau( - const SE3& T_ref_cur, - const Vector3d& f, - const double z, - const double px_error_angle); - -protected: - feature_detection::DetectorPtr feature_detector_; - callback_t seed_converged_cb_; - //std::list seeds_; - std::list> seeds_; - boost::mutex seeds_mut_; - bool seeds_updating_halt_; //!< Set this value to true when seeds updating should be interrupted. - boost::thread* thread_; - std::queue frame_queue_; - boost::mutex frame_queue_mut_; - boost::condition_variable frame_queue_cond_; - FramePtr new_keyframe_; //!< Next keyframe to extract new seeds. - bool new_keyframe_set_; //!< Do we have a new keyframe to process?. - double new_keyframe_min_depth_; //!< Minimum depth in the new keyframe. Used for range in new seeds. - double new_keyframe_mean_depth_; //!< Maximum depth in the new keyframe. Used for range in new seeds. - vk::PerformanceMonitor permon_; //!< Separate performance monitor since the DepthFilter runs in a parallel thread. - Matcher matcher_; - - /// Initialize new seeds from a frame. - void initializeSeeds(FramePtr frame); - - /// Update all seeds with a new measurement frame. - virtual void updateSeeds(FramePtr frame); - - /// When a new keyframe arrives, the frame queue should be cleared. - void clearFrameQueue(); - - /// A thread that is continuously updating the seeds. - void updateSeedsLoop(); -}; - -} // namespace svo - -#endif // SVO_DEPTH_FILTER_H_ diff --git a/CPU_version/svo/include/svo/feature.h b/CPU_version/svo/include/svo/feature.h deleted file mode 100644 index 6f90a9a..0000000 --- a/CPU_version/svo/include/svo/feature.h +++ /dev/null @@ -1,75 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_FEATURE_H_ -#define SVO_FEATURE_H_ - -#include - -namespace svo { - -/// A salient image region that is tracked across frames. -struct Feature -{ - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - enum FeatureType { - CORNER, - EDGELET - }; - - FeatureType type; //!< Type can be corner or edgelet. - Frame* frame; //!< Pointer to frame in which the feature was detected. - Vector2d px; //!< Coordinates in pixels on pyramid level 0. - Vector3d f; //!< Unit-bearing vector of the feature. - int level; //!< Image pyramid level where feature was extracted. - Point* point; //!< Pointer to 3D point which corresponds to the feature. - Vector2d grad; //!< Dominant gradient direction for edglets, normalized. - - Feature(Frame* _frame, const Vector2d& _px, int _level) : - type(CORNER), - frame(_frame), - px(_px), - f(frame->cam_->cam2world(px)), - level(_level), - point(NULL), - grad(1.0,0.0) - {} - - Feature(Frame* _frame, const Vector2d& _px, const Vector3d& _f, int _level) : - type(CORNER), - frame(_frame), - px(_px), - f(_f), - level(_level), - point(NULL), - grad(1.0,0.0) - {} - - Feature(Frame* _frame, Point* _point, const Vector2d& _px, const Vector3d& _f, int _level) : - type(CORNER), - frame(_frame), - px(_px), - f(_f), - level(_level), - point(_point), - grad(1.0,0.0) - {} -}; - -} // namespace svo - -#endif // SVO_FEATURE_H_ diff --git a/CPU_version/svo/include/svo/feature_alignment.h b/CPU_version/svo/include/svo/feature_alignment.h deleted file mode 100644 index 12523e3..0000000 --- a/CPU_version/svo/include/svo/feature_alignment.h +++ /dev/null @@ -1,63 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_FEATURE_ALIGNMENT_H_ -#define SVO_FEATURE_ALIGNMENT_H_ - -#include - -namespace svo { - -/// Subpixel refinement of a reference feature patch with the current image. -/// Implements the inverse-compositional approach (see "Lucas-Kanade 20 Years on" -/// paper by Baker. -namespace feature_alignment { - -bool align1D( - const cv::Mat& cur_img, - const Vector2f& dir, // direction in which the patch is allowed to move - uint8_t* ref_patch_with_border, - uint8_t* ref_patch, - const int n_iter, - Vector2d& cur_px_estimate, - double& h_inv); - -bool align2D( - const cv::Mat& cur_img, - uint8_t* ref_patch_with_border, - uint8_t* ref_patch, - const int n_iter, - Vector2d& cur_px_estimate, - bool no_simd = false); - -bool align2D_SSE2( - const cv::Mat& cur_img, - uint8_t* ref_patch_with_border, - uint8_t* ref_patch, - const int n_iter, - Vector2d& cur_px_estimate); - -bool align2D_NEON( - const cv::Mat& cur_img, - uint8_t* ref_patch_with_border, - uint8_t* ref_patch, - const int n_iter, - Vector2d& cur_px_estimate); - -} // namespace feature_alignment -} // namespace svo - -#endif // SVO_FEATURE_ALIGNMENT_H_ diff --git a/CPU_version/svo/include/svo/feature_detection.h b/CPU_version/svo/include/svo/feature_detection.h deleted file mode 100644 index d0990a8..0000000 --- a/CPU_version/svo/include/svo/feature_detection.h +++ /dev/null @@ -1,107 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_FEATURE_DETECTION_H_ -#define SVO_FEATURE_DETECTION_H_ - -#include -#include - -namespace svo { - -/// Implementation of various feature detectors. -namespace feature_detection { - -/// Temporary container used for corner detection. Features are initialized from these. -struct Corner -{ - int x; //!< x-coordinate of corner in the image. - int y; //!< y-coordinate of corner in the image. - int level; //!< pyramid level of the corner. - float score; //!< shi-tomasi score of the corner. - float angle; //!< for gradient-features: dominant gradient angle. - Corner(int x, int y, float score, int level, float angle) : - x(x), y(y), level(level), score(score), angle(angle) - {} -}; -typedef vector Corners; - -/// All detectors should derive from this abstract class. -class AbstractDetector -{ -public: - AbstractDetector( - const int img_width, - const int img_height, - const int cell_size, - const int n_pyr_levels); - - virtual ~AbstractDetector() {}; - - virtual void detect( - Frame* frame, - const ImgPyr& img_pyr, - const double detection_threshold, - Features& fts) = 0; - - /// Flag the grid cell as occupied - void setGridOccpuancy(const Vector2d& px); - - /// Set grid cells of existing features as occupied - void setExistingFeatures(const Features& fts); - -protected: - - static const int border_ = 8; //!< no feature should be within 8px of border. - const int cell_size_; - const int n_pyr_levels_; - const int grid_n_cols_; - const int grid_n_rows_; - vector grid_occupancy_; - - void resetGrid(); - - inline int getCellIndex(int x, int y, int level) - { - const int scale = (1< DetectorPtr; - -/// FAST detector by Edward Rosten. -class FastDetector : public AbstractDetector -{ -public: - FastDetector( - const int img_width, - const int img_height, - const int cell_size, - const int n_pyr_levels); - - virtual ~FastDetector() {} - - virtual void detect( - Frame* frame, - const ImgPyr& img_pyr, - const double detection_threshold, - Features& fts); -}; - -} // namespace feature_detection -} // namespace svo - -#endif // SVO_FEATURE_DETECTION_H_ diff --git a/CPU_version/svo/include/svo/frame.h b/CPU_version/svo/include/svo/frame.h deleted file mode 100644 index c926277..0000000 --- a/CPU_version/svo/include/svo/frame.h +++ /dev/null @@ -1,154 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_FRAME_H_ -#define SVO_FRAME_H_ - -#include -#include -#include -#include -#include - -namespace g2o { -class VertexSE3Expmap; -} -typedef g2o::VertexSE3Expmap g2oFrameSE3; - -namespace svo { - -class Point; -struct Feature; - -typedef list Features; -typedef vector ImgPyr; - -/// A frame saves the image, the associated features and the estimated pose. -class Frame : boost::noncopyable -{ -public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - static int frame_counter_; //!< Counts the number of created frames. Used to set the unique id. - int id_; //!< Unique id of the frame. - double timestamp_; //!< Timestamp of when the image was recorded. - vk::AbstractCamera* cam_; //!< Camera model. - Sophus::SE3 T_f_w_; //!< Transform (f)rame from (w)orld. - Matrix Cov_; //!< Covariance. - ImgPyr img_pyr_; //!< Image Pyramid. - Features fts_; //!< List of features in the image. - vector key_pts_; //!< Five features and associated 3D points which are used to detect if two frames have overlapping field of view. - bool is_keyframe_; //!< Was this frames selected as keyframe? - g2oFrameSE3* v_kf_; //!< Temporary pointer to the g2o node object of the keyframe. - int last_published_ts_; //!< Timestamp of last publishing. - - Frame(vk::AbstractCamera* cam, const cv::Mat& img, double timestamp); - ~Frame(); - - /// Initialize new frame and create image pyramid. - void initFrame(const cv::Mat& img); - - /// Select this frame as keyframe. - void setKeyframe(); - - /// Add a feature to the image - void addFeature(Feature* ftr); - - /// The KeyPoints are those five features which are closest to the 4 image corners - /// and to the center and which have a 3D point assigned. These points are used - /// to quickly check whether two frames have overlapping field of view. - void setKeyPoints(); - - /// Check if we can select five better key-points. - void checkKeyPoints(Feature* ftr); - - /// If a point is deleted, we must remove the corresponding key-point. - void removeKeyPoint(Feature* ftr); - - /// Return number of point observations. - inline size_t nObs() const { return fts_.size(); } - - /// Check if a point in (w)orld coordinate frame is visible in the image. - bool isVisible(const Vector3d& xyz_w) const; - - /// Full resolution image stored in the frame. - inline const cv::Mat& img() const { return img_pyr_[0]; } - - /// Was this frame selected as keyframe? - inline bool isKeyframe() const { return is_keyframe_; } - - /// Transforms point coordinates in world-frame (w) to camera pixel coordinates (c). - inline Vector2d w2c(const Vector3d& xyz_w) const { return cam_->world2cam( T_f_w_ * xyz_w ); } - - /// Transforms pixel coordinates (c) to frame unit sphere coordinates (f). - inline Vector3d c2f(const Vector2d& px) const { return cam_->cam2world(px[0], px[1]); } - - /// Transforms pixel coordinates (c) to frame unit sphere coordinates (f). - inline Vector3d c2f(const double x, const double y) const { return cam_->cam2world(x, y); } - - /// Transforms point coordinates in world-frame (w) to camera-frams (f). - inline Vector3d w2f(const Vector3d& xyz_w) const { return T_f_w_ * xyz_w; } - - /// Transforms point from frame unit sphere (f) frame to world coordinate frame (w). - inline Vector3d f2w(const Vector3d& f) const { return T_f_w_.inverse() * f; } - - /// Projects Point from unit sphere (f) in camera pixels (c). - inline Vector2d f2c(const Vector3d& f) const { return cam_->world2cam( f ); } - - /// Return the pose of the frame in the (w)orld coordinate frame. - inline Vector3d pos() const { return T_f_w_.inverse().translation(); } - - /// Frame jacobian for projection of 3D point in (f)rame coordinate to - /// unit plane coordinates uv (focal length = 1). - inline static void jacobian_xyz2uv( - const Vector3d& xyz_in_f, - Matrix& J) - { - const double x = xyz_in_f[0]; - const double y = xyz_in_f[1]; - const double z_inv = 1./xyz_in_f[2]; - const double z_inv_2 = z_inv*z_inv; - - J(0,0) = -z_inv; // -1/z - J(0,1) = 0.0; // 0 - J(0,2) = x*z_inv_2; // x/z^2 - J(0,3) = y*J(0,2); // x*y/z^2 - J(0,4) = -(1.0 + x*J(0,2)); // -(1.0 + x^2/z^2) - J(0,5) = y*z_inv; // y/z - - J(1,0) = 0.0; // 0 - J(1,1) = -z_inv; // -1/z - J(1,2) = y*z_inv_2; // y/z^2 - J(1,3) = 1.0 + y*J(1,2); // 1.0 + y^2/z^2 - J(1,4) = -J(0,3); // -x*y/z^2 - J(1,5) = -x*z_inv; // x/z - } -}; - - -/// Some helper functions for the frame object. -namespace frame_utils { - -/// Creates an image pyramid of half-sampled images. -void createImgPyramid(const cv::Mat& img_level_0, int n_levels, ImgPyr& pyr); - -/// Get the average depth of the features in the image. -bool getSceneDepth(const Frame& frame, double& depth_mean, double& depth_min); - -} // namespace frame_utils -} // namespace svo - -#endif // SVO_FRAME_H_ diff --git a/CPU_version/svo/include/svo/frame_handler_base.h b/CPU_version/svo/include/svo/frame_handler_base.h deleted file mode 100644 index 9a78639..0000000 --- a/CPU_version/svo/include/svo/frame_handler_base.h +++ /dev/null @@ -1,123 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_FRAME_HANDLER_BASE_H_ -#define SVO_FRAME_HANDLER_BASE_H_ - -#include -#include -#include -#include -#include -#include -#include -#include - -namespace vk -{ -class AbstractCamera; -class PerformanceMonitor; -} - -namespace svo -{ -class Point; -class Matcher; -class DepthFilter; - -/// Base class for various VO pipelines. Manages the map and the state machine. -class FrameHandlerBase : boost::noncopyable -{ -public: - enum Stage { - STAGE_PAUSED, - STAGE_FIRST_FRAME, - STAGE_SECOND_FRAME, - STAGE_DEFAULT_FRAME, - STAGE_RELOCALIZING - }; - enum TrackingQuality { - TRACKING_INSUFFICIENT, - TRACKING_BAD, - TRACKING_GOOD - }; - enum UpdateResult { - RESULT_NO_KEYFRAME, - RESULT_IS_KEYFRAME, - RESULT_FAILURE - }; - - FrameHandlerBase(); - - virtual ~FrameHandlerBase(); - - /// Get the current map. - const Map& map() const { return map_; } - - /// Will reset the map as soon as the current frame is finished processing. - void reset() { set_reset_ = true; } - - /// Start processing. - void start() { set_start_ = true; } - - /// Get the current stage of the algorithm. - Stage stage() const { return stage_; } - - /// Get tracking quality. - TrackingQuality trackingQuality() const { return tracking_quality_; } - - /// Get the processing time of the previous iteration. - double lastProcessingTime() const { return timer_.getTime(); } - - /// Get the number of feature observations of the last frame. - size_t lastNumObservations() const { return num_obs_last_; } - -protected: - Stage stage_; //!< Current stage of the algorithm. - bool set_reset_; //!< Flag that the user can set. Will reset the system before the next iteration. - bool set_start_; //!< Flag the user can set to start the system when the next image is received. - Map map_; //!< Map of keyframes created by the slam system. - vk::Timer timer_; //!< Stopwatch to measure time to process frame. - vk::RingBuffer acc_frame_timings_; //!< Total processing time of the last 10 frames, used to give some user feedback on the performance. - vk::RingBuffer acc_num_obs_; //!< Number of observed features of the last 10 frames, used to give some user feedback on the tracking performance. - size_t num_obs_last_; //!< Number of observations in the previous frame. - TrackingQuality tracking_quality_; //!< An estimate of the tracking quality based on the number of tracked features. - - /// Before a frame is processed, this function is called. - bool startFrameProcessingCommon(const double timestamp); - - /// When a frame is finished processing, this function is called. - int finishFrameProcessingCommon( - const size_t update_id, - const UpdateResult dropout, - const size_t num_observations); - - /// Reset the map and frame handler to start from scratch. - void resetCommon(); - - /// Reset the frame handler. Implement in derived class. - virtual void resetAll() { resetCommon(); } - - /// Set the tracking quality based on the number of tracked features. - virtual void setTrackingQuality(const size_t num_observations); - - /// Optimize some of the observed 3D points. - virtual void optimizeStructure(FramePtr frame, size_t max_n_pts, int max_iter); -}; - -} // namespace nslam - -#endif // SVO_FRAME_HANDLER_BASE_H_ diff --git a/CPU_version/svo/include/svo/frame_handler_mono.h b/CPU_version/svo/include/svo/frame_handler_mono.h deleted file mode 100644 index 58789c8..0000000 --- a/CPU_version/svo/include/svo/frame_handler_mono.h +++ /dev/null @@ -1,104 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_FRAME_HANDLER_H_ -#define SVO_FRAME_HANDLER_H_ - -#include -#include -#include -#include -#include -#include - -namespace svo { - -/// Monocular Visual Odometry Pipeline as described in the SVO paper. -class FrameHandlerMono : public FrameHandlerBase -{ -public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - FrameHandlerMono(vk::AbstractCamera* cam,Sophus::SE3& SE_init); - virtual ~FrameHandlerMono(); - - /// Provide an image. - void addImage(const cv::Mat& img, double timestamp); - - /// Set the first frame (used for synthetic datasets in benchmark node) - void setFirstFrame(const FramePtr& first_frame); - - /// Get the last frame that has been processed. - FramePtr lastFrame() { return last_frame_; } - - /// Get the set of spatially closest keyframes of the last frame. - const set& coreKeyframes() { return core_kfs_; } - - /// Return the feature track to visualize the KLT tracking during initialization. - const vector& initFeatureTrackRefPx() const { return klt_homography_init_.px_ref_; } - const vector& initFeatureTrackCurPx() const { return klt_homography_init_.px_cur_; } - - /// Access the depth filter. - DepthFilter* depthFilter() const { return depth_filter_; } - - /// An external place recognition module may know where to relocalize. - bool relocalizeFrameAtPose( - const int keyframe_id, - const SE3& T_kf_f, - const cv::Mat& img, - const double timestamp); - std::unique_ptr imu_integPtr_; //Integration of IMU - -protected: - vk::AbstractCamera* cam_; //!< Camera model, can be ATAN, Pinhole or Ocam (see vikit). - Reprojector reprojector_; //!< Projects points from other keyframes into the current frame - FramePtr new_frame_; //!< Current frame. - FramePtr last_frame_; //!< Last frame, not necessarily a keyframe. - set core_kfs_; //!< Keyframes in the closer neighbourhood. - vector< pair > overlap_kfs_; //!< All keyframes with overlapping field of view. the paired number specifies how many common mappoints are observed TODO: why vector!? - initialization::KltHomographyInit klt_homography_init_; //!< Used to estimate pose of the first two keyframes by estimating a homography. - DepthFilter* depth_filter_; //!< Depth estimation algorithm runs in a parallel thread and is used to initialize new 3D points. - - - /// Initialize the visual odometry algorithm. - virtual void initialize(); - - /// Processes the first frame and sets it as a keyframe. - virtual UpdateResult processFirstFrame(); - - /// Processes all frames after the first frame until a keyframe is selected. - virtual UpdateResult processSecondFrame(); - - /// Processes all frames after the first two keyframes. - virtual UpdateResult processFrame(); - - /// Try relocalizing the frame at relative position to provided keyframe. - virtual UpdateResult relocalizeFrame( - const SE3& T_cur_ref, - FramePtr ref_keyframe); - - /// Reset the frame handler. Implement in derived class. - virtual void resetAll(); - - /// Keyframe selection criterion. - virtual bool needNewKf(double scene_depth_mean); - - void setCoreKfs(size_t n_closest); -}; - -} // namespace svo - -#endif // SVO_FRAME_HANDLER_H_ diff --git a/CPU_version/svo/include/svo/global.h b/CPU_version/svo/include/svo/global.h deleted file mode 100644 index 03aff4e..0000000 --- a/CPU_version/svo/include/svo/global.h +++ /dev/null @@ -1,101 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_GLOBAL_H_ -#define SVO_GLOBAL_H_ - -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#ifndef RPG_SVO_VIKIT_IS_VECTOR_SPECIALIZED //Guard for rpg_vikit -#define RPG_SVO_VIKIT_IS_VECTOR_SPECIALIZED -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector3d) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector2d) -#endif - -#ifdef SVO_USE_ROS - #include - #define SVO_DEBUG_STREAM(x) ROS_DEBUG_STREAM(x) - #define SVO_INFO_STREAM(x) ROS_INFO_STREAM(x) - #define SVO_WARN_STREAM(x) ROS_WARN_STREAM(x) - #define SVO_WARN_STREAM_THROTTLE(rate, x) ROS_WARN_STREAM_THROTTLE(rate, x) - #define SVO_ERROR_STREAM(x) ROS_ERROR_STREAM(x) -#else - #define SVO_INFO_STREAM(x) std::cerr<<"\033[0;0m[INFO] "< // Adapted from rosconsole. Copyright (c) 2008, Willow Garage, Inc. - #define SVO_WARN_STREAM_THROTTLE(rate, x) \ - do { \ - static double __log_stream_throttle__last_hit__ = 0.0; \ - std::chrono::time_point __log_stream_throttle__now__ = \ - std::chrono::system_clock::now(); \ - if (__log_stream_throttle__last_hit__ + rate <= \ - std::chrono::duration_cast( \ - __log_stream_throttle__now__.time_since_epoch()).count()) { \ - __log_stream_throttle__last_hit__ = \ - std::chrono::duration_cast( \ - __log_stream_throttle__now__.time_since_epoch()).count(); \ - SVO_WARN_STREAM(x); \ - } \ - } while(0) -#endif - -namespace svo -{ - using namespace Eigen; - using namespace Sophus; - - const double EPS = 0.0000000001; - const double PI = 3.14159265; - -#ifdef SVO_TRACE - extern vk::PerformanceMonitor* g_permon; - #define SVO_LOG(value) g_permon->log(std::string((#value)),(value)) - #define SVO_LOG2(value1, value2) SVO_LOG(value1); SVO_LOG(value2) - #define SVO_LOG3(value1, value2, value3) SVO_LOG2(value1, value2); SVO_LOG(value3) - #define SVO_LOG4(value1, value2, value3, value4) SVO_LOG2(value1, value2); SVO_LOG2(value3, value4) - #define SVO_START_TIMER(name) g_permon->startTimer((name)) - #define SVO_STOP_TIMER(name) g_permon->stopTimer((name)) -#else - #define SVO_LOG(v) - #define SVO_LOG2(v1, v2) - #define SVO_LOG3(v1, v2, v3) - #define SVO_LOG4(v1, v2, v3, v4) - #define SVO_START_TIMER(name) - #define SVO_STOP_TIMER(name) -#endif - - class Frame; - typedef boost::shared_ptr FramePtr; -} // namespace svo - -#endif // SVO_GLOBAL_H_ diff --git a/CPU_version/svo/include/svo/imu_integration.h b/CPU_version/svo/include/svo/imu_integration.h deleted file mode 100644 index 11b9055..0000000 --- a/CPU_version/svo/include/svo/imu_integration.h +++ /dev/null @@ -1,121 +0,0 @@ -// -// Created by gufe on 4/9/21. -// - -#ifndef SVO_IMU_INTEGRATION_H -#define SVO_IMU_INTEGRATION_H -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -using gtsam::symbol_shorthand::B; // Bias (ax,ay,az,gx,gy,gz) -using gtsam::symbol_shorthand::V; // Vel (xdot,ydot,zdot) -using gtsam::symbol_shorthand::P; // Pose3 (x,y,z,r,p,y) -using gtsam::symbol_shorthand::C; // Camera pose - -//https://stackoverflow.com/questions/24881799/get-index-in-c11-foreach-loop -// Wrapper class -template -class enumerate_impl -{ -public: - // The return value of the operator* of the iterator, this - // is what you will get inside of the for loop - struct item - { - size_t index; - typename T::value_type & item; - }; - typedef item value_type; - - // Custom iterator with minimal interface - struct iterator - { - iterator(typename T::iterator _it, size_t counter=0) : - it(_it), counter(counter) - {} - - iterator operator++() - { - return iterator(++it, ++counter); - } - - bool operator!=(iterator other) - { - return it != other.it; - } - - typename T::iterator::value_type item() - { - return *it; - } - - value_type operator*() - { - return value_type{counter, *it}; - } - - size_t index() - { - return counter; - } - - private: - typename T::iterator it; - size_t counter; - }; - - enumerate_impl(T & t) : container(t) {} - - iterator begin() - { - return iterator(container.begin()); - } - - iterator end() - { - return iterator(container.end()); - } - -private: - T & container; -}; - -// A templated free function allows you to create the wrapper class -// conveniently -template -enumerate_impl enumerate(T & t) -{ - return enumerate_impl(t); -} - -class Imu_Integration{ -public: - Imu_Integration(Sophus::SE3& SE_init); - ~Imu_Integration(); - bool reset(gtsam::ISAM2& optimizer,boost::shared_ptr& new_frame); - bool reset(gtsam::LevenbergMarquardtOptimizer& optimizer,boost::shared_ptr& new_frame); - bool update(double* imu= nullptr); - bool predict(boost::shared_ptr&,std::size_t&,const double reproj_thresh); -private: - std::shared_ptr statePtr; - std::shared_ptr imu_biasPtr; - std::shared_ptr valuesPtr; - std::shared_ptr graphPtr; - boost::shared_ptr parameterPtr; - std::shared_ptr preintegratedPtr; - boost::shared_ptr ProjectNoisePtr; - std::chrono::steady_clock::time_point t_1; - std::uint32_t imu_factor_id=0; - uint imu_n=0; - std::shared_ptr optimizerParamPtr; - bool syn=false; -}; -#endif //SVO_IMU_INTEGRATION_H diff --git a/CPU_version/svo/include/svo/initialization.h b/CPU_version/svo/include/svo/initialization.h deleted file mode 100644 index cb562e5..0000000 --- a/CPU_version/svo/include/svo/initialization.h +++ /dev/null @@ -1,83 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_INITIALIZATION_H -#define SVO_INITIALIZATION_H - -#include - -namespace svo { - -class FrameHandlerMono; - -/// Bootstrapping the map from the first two views. -namespace initialization { - -enum InitResult { FAILURE, NO_KEYFRAME, SUCCESS }; - -/// Tracks features using Lucas-Kanade tracker and then estimates a homography. -class KltHomographyInit { - friend class svo::FrameHandlerMono; -public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - FramePtr frame_ref_; - KltHomographyInit() {}; - ~KltHomographyInit() {}; - InitResult addFirstFrame(FramePtr frame_ref); - InitResult addSecondFrame(FramePtr frame_ref); - void reset(); - -protected: - vector px_ref_; //!< keypoints to be tracked in reference frame. - vector px_cur_; //!< tracked keypoints in current frame. - vector f_ref_; //!< bearing vectors corresponding to the keypoints in the reference image. - vector f_cur_; //!< bearing vectors corresponding to the keypoints in the current image. - vector disparities_; //!< disparity between first and second frame. - vector inliers_; //!< inliers after the geometric check (e.g., Homography). - vector xyz_in_cur_; //!< 3D points computed during the geometric check. - SE3 T_cur_from_ref_; //!< computed transformation between the first two frames. -}; - -/// Detect Fast corners in the image. -void detectFeatures( - FramePtr frame, - vector& px_vec, - vector& f_vec); - -/// Compute optical flow (Lucas Kanade) for selected keypoints. -void trackKlt( - FramePtr frame_ref, - FramePtr frame_cur, - vector& px_ref, - vector& px_cur, - vector& f_ref, - vector& f_cur, - vector& disparities); - -void computeHomography( - const vector& f_ref, - const vector& f_cur, - double focal_length, - double reprojection_threshold, - vector& inliers, - vector& xyz_in_cur, - SE3& T_cur_from_ref); - -} // namespace initialization -} // namespace svo - -#endif // SVO_INITIALIZATION_H diff --git a/CPU_version/svo/include/svo/map.h b/CPU_version/svo/include/svo/map.h deleted file mode 100644 index 458622b..0000000 --- a/CPU_version/svo/include/svo/map.h +++ /dev/null @@ -1,136 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_MAP_H_ -#define SVO_MAP_H_ - -#include -#include -#include -#include - -namespace svo { - -class Point; -class Feature; -class Seed; - -/// Container for converged 3D points that are not already assigned to two keyframes. -class MapPointCandidates -{ -public: - typedef pair PointCandidate; - typedef list PointCandidateList; - - /// The depth-filter is running in a parallel thread and fills the canidate list. - /// This mutex controls concurrent access to point_candidates. - boost::mutex mut_; - - /// Candidate points are created from converged seeds. - /// Until the next keyframe, these points can be used for reprojection and pose optimization. - PointCandidateList candidates_; - list< Point* > trash_points_; - - MapPointCandidates(); - ~MapPointCandidates(); - - /// Add a candidate point. - void newCandidatePoint(Point* point, double depth_sigma2); - - /// Adds the feature to the frame and deletes candidate from list. - void addCandidatePointToFrame(FramePtr frame); - - /// Remove a candidate point from the list of candidates. - bool deleteCandidatePoint(Point* point); - - /// Remove all candidates that belong to a frame. - void removeFrameCandidates(FramePtr frame); - - /// Reset the candidate list, remove and delete all points. - void reset(); - - void deleteCandidate(PointCandidate& c); - - void emptyTrash(); -}; - -/// Map object which saves all keyframes which are in a map. -class Map : boost::noncopyable -{ -public: - list< FramePtr > keyframes_; //!< List of keyframes in the map. - list< Point* > trash_points_; //!< A deleted point is moved to the trash bin. Now and then this is cleaned. One reason is that the visualizer must remove the points also. - MapPointCandidates point_candidates_; - - Map(); - ~Map(); - - /// Reset the map. Delete all keyframes and reset the frame and point counters. - void reset(); - - /// Delete a point in the map and remove all references in keyframes to it. - void safeDeletePoint(Point* pt); - - /// Moves the point to the trash queue which is cleaned now and then. - void deletePoint(Point* pt); - - /// Moves the frame to the trash queue which is cleaned now and then. - bool safeDeleteFrame(FramePtr frame); - - /// Remove the references between a point and a frame. - void removePtFrameRef(Frame* frame, Feature* ftr); - - /// Add a new keyframe to the map. - void addKeyframe(FramePtr new_keyframe); - - /// Given a frame, return all keyframes which have an overlapping field of view. - void getCloseKeyframes(const FramePtr& frame, list< pair >& close_kfs) const; - - /// Return the keyframe which is spatially closest and has overlapping field of view. - FramePtr getClosestKeyframe(const FramePtr& frame) const; - - /// Return the keyframe which is furthest apart from pos. - FramePtr getFurthestKeyframe(const Vector3d& pos) const; - - bool getKeyframeById(const int id, FramePtr& frame) const; - - /// Transform the whole map with rotation R, translation t and scale s. - void transform(const Matrix3d& R, const Vector3d& t, const double& s); - - /// Empty trash bin of deleted keyframes and map points. We don't delete the - /// points immediately to ensure proper cleanup and to provide the visualizer - /// a list of objects which must be removed. - void emptyTrash(); - - /// Return the keyframe which was last inserted in the map. - inline FramePtr lastKeyframe() { return keyframes_.back(); } - - /// Return the number of keyframes in the map - inline size_t size() const { return keyframes_.size(); } -}; - -/// A collection of debug functions to check the data consistency. -namespace map_debug { - -void mapStatistics(Map* map); -void mapValidation(Map* map, int id); -void frameValidation(Frame* frame, int id); -void pointValidation(Point* point, int id); - -} // namespace map_debug -} // namespace svo - -#endif // SVO_MAP_H_ diff --git a/CPU_version/svo/include/svo/matcher.h b/CPU_version/svo/include/svo/matcher.h deleted file mode 100644 index b53340e..0000000 --- a/CPU_version/svo/include/svo/matcher.h +++ /dev/null @@ -1,130 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_MATCHER_H_ -#define SVO_MATCHER_H_ - -#include - -namespace vk { - class AbstractCamera; - namespace patch_score { - template class ZMSSD; - } -} - -namespace svo { - -class Point; -class Frame; -class Feature; - -/// Warp a patch from the reference view to the current view. -namespace warp { - -void getWarpMatrixAffine( - const vk::AbstractCamera& cam_ref, - const vk::AbstractCamera& cam_cur, - const Vector2d& px_ref, - const Vector3d& f_ref, - const double depth_ref, - const SE3& T_cur_ref, - const int level_ref, - Matrix2d& A_cur_ref); - -int getBestSearchLevel( - const Matrix2d& A_cur_ref, - const int max_level); - -void warpAffine( - const Matrix2d& A_cur_ref, - const cv::Mat& img_ref, - const Vector2d& px_ref, - const int level_ref, - const int level_cur, - const int halfpatch_size, - uint8_t* patch); - -} // namespace warp - -/// Patch-matcher for reprojection-matching and epipolar search in triangulation. -class Matcher -{ -public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - static const int halfpatch_size_ = 4; - static const int patch_size_ = 8; - - typedef vk::patch_score::ZMSSD PatchScore; - - struct Options - { - bool align_1d; //!< in epipolar search: align patch 1D along epipolar line - int align_max_iter; //!< number of iterations for aligning the feature patches in gauss newton - double max_epi_length_optim;//!< max length of epipolar line to skip epipolar search and directly go to img align - size_t max_epi_search_steps;//!< max number of evaluations along epipolar line - bool subpix_refinement; //!< do gauss newton feature patch alignment after epipolar search - bool epi_search_edgelet_filtering; - double epi_search_edgelet_max_angle; - Options() : - align_1d(false), - align_max_iter(10), - max_epi_length_optim(2.0), - max_epi_search_steps(1000), - subpix_refinement(true), - epi_search_edgelet_filtering(true), - epi_search_edgelet_max_angle(0.7) - {} - } options_; - - uint8_t patch_[patch_size_*patch_size_] __attribute__ ((aligned (16))); - uint8_t patch_with_border_[(patch_size_+2)*(patch_size_+2)] __attribute__ ((aligned (16))); - Matrix2d A_cur_ref_; //!< affine warp matrix - Vector2d epi_dir_; - double epi_length_; //!< length of epipolar line segment in pixels (only used for epipolar search) - double h_inv_; //!< hessian of 1d image alignment along epipolar line - int search_level_; - bool reject_; - Feature* ref_ftr_; - Vector2d px_cur_; - - Matcher() = default; - ~Matcher() = default; - - /// Find a match by directly applying subpix refinement. - /// IMPORTANT! This function assumes that px_cur is already set to an estimate that is within ~2-3 pixel of the final result! - bool findMatchDirect( - const Point& pt, - const Frame& frame, - Vector2d& px_cur); - - /// Find a match by searching along the epipolar line without using any features. - bool findEpipolarMatchDirect( - const Frame& ref_frame, - const Frame& cur_frame, - const Feature& ref_ftr, - const double d_estimate, - const double d_min, - const double d_max, - double& depth); - - void createPatchFromPatchWithBorder(); -}; - -} // namespace svo - -#endif // SVO_MATCHER_H_ diff --git a/CPU_version/svo/include/svo/point.h b/CPU_version/svo/include/svo/point.h deleted file mode 100644 index e1bb81b..0000000 --- a/CPU_version/svo/include/svo/point.h +++ /dev/null @@ -1,108 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_POINT_H_ -#define SVO_POINT_H_ - -#include -#include - -namespace g2o { - class VertexSBAPointXYZ; -} -typedef g2o::VertexSBAPointXYZ g2oPoint; - -namespace svo { - -class Feature; - -typedef Matrix Matrix23d; - -/// A 3D point on the surface of the scene. -class Point : boost::noncopyable -{ -public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - enum PointType { - TYPE_DELETED, - TYPE_CANDIDATE, - TYPE_UNKNOWN, - TYPE_GOOD - }; - - static int point_counter_; //!< Counts the number of created points. Used to set the unique id. - int id_; //!< Unique ID of the point. - Vector3d pos_; //!< 3d pos of the point in the world coordinate frame. - Vector3d normal_; //!< Surface normal at point. - Matrix3d normal_information_; //!< Inverse covariance matrix of normal estimation. - bool normal_set_; //!< Flag whether the surface normal was estimated or not. - list obs_; //!< References to keyframes which observe the point. - size_t n_obs_; //!< Number of obervations: Keyframes AND successful reprojections in intermediate frames. - g2oPoint* v_pt_; //!< Temporary pointer to the point-vertex in g2o during bundle adjustment. - int last_published_ts_; //!< Timestamp of last publishing. - int last_projected_kf_id_; //!< Flag for the reprojection: don't reproject a pt twice. - PointType type_; //!< Quality of the point. - int n_failed_reproj_; //!< Number of failed reprojections. Used to assess the quality of the point. - int n_succeeded_reproj_; //!< Number of succeeded reprojections. Used to assess the quality of the point. - int last_structure_optim_; //!< Timestamp of last point optimization - - Point(const Vector3d& pos); - Point(const Vector3d& pos, Feature* ftr); - ~Point(); - - /// Add a reference to a frame. - void addFrameRef(Feature* ftr); - - /// Remove reference to a frame. - bool deleteFrameRef(Frame* frame); - - /// Initialize point normal. The inital estimate will point towards the frame. - void initNormal(); - - /// Check whether mappoint has reference to a frame. - Feature* findFrameRef(Frame* frame); - - /// Get Frame with similar viewpoint. - bool getCloseViewObs(const Vector3d& pos, Feature*& obs) const; - - /// Get number of observations. - inline size_t nRefs() const { return obs_.size(); } - - /// Optimize point position through minimizing the reprojection error. - void optimize(const size_t n_iter); - - /// Jacobian of point projection on unit plane (focal length = 1) in frame (f). - inline static void jacobian_xyz2uv( - const Vector3d& p_in_f, - const Matrix3d& R_f_w, - Matrix23d& point_jac) - { - const double z_inv = 1.0/p_in_f[2]; - const double z_inv_sq = z_inv*z_inv; - point_jac(0, 0) = z_inv; - point_jac(0, 1) = 0.0; - point_jac(0, 2) = -p_in_f[0] * z_inv_sq; - point_jac(1, 0) = 0.0; - point_jac(1, 1) = z_inv; - point_jac(1, 2) = -p_in_f[1] * z_inv_sq; - point_jac = - point_jac * R_f_w; - } -}; - -} // namespace svo - -#endif // SVO_POINT_H_ diff --git a/CPU_version/svo/include/svo/pose_optimizer.h b/CPU_version/svo/include/svo/pose_optimizer.h deleted file mode 100644 index ca048ae..0000000 --- a/CPU_version/svo/include/svo/pose_optimizer.h +++ /dev/null @@ -1,50 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_POSE_OPTIMIZER_H_ -#define SVO_POSE_OPTIMIZER_H_ - -#include - -namespace svo { - -using namespace Eigen; -using namespace Sophus; -using namespace std; - -typedef Matrix Matrix6d; -typedef Matrix Matrix26d; -typedef Matrix Vector6d; - -class Point; - -/// Motion-only bundle adjustment. Minimize the reprojection error of a single frame. -namespace pose_optimizer { - -void optimizeGaussNewton( - const double reproj_thresh, - const size_t n_iter, - const bool verbose, - FramePtr& frame, - double& estimated_scale, - double& error_init, - double& error_final, - size_t& num_obs); - -} // namespace pose_optimizer -} // namespace svo - -#endif // SVO_POSE_OPTIMIZER_H_ diff --git a/CPU_version/svo/include/svo/reprojector.h b/CPU_version/svo/include/svo/reprojector.h deleted file mode 100644 index e345f0d..0000000 --- a/CPU_version/svo/include/svo/reprojector.h +++ /dev/null @@ -1,101 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_REPROJECTION_H_ -#define SVO_REPROJECTION_H_ - -#include -#include - -namespace vk { -class AbstractCamera; -} - -namespace svo { - -class Map; -class Point; - -/// Project points from the map into the image and find the corresponding -/// feature (corner). We don't search a match for every point but only for one -/// point per cell. Thereby, we achieve a homogeneously distributed set of -/// matched features and at the same time we can save processing time by not -/// projecting all points. -class Reprojector -{ -public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - /// Reprojector config parameters - struct Options { - size_t max_n_kfs; //!< max number of keyframes to reproject from - bool find_match_direct; - Options() - : max_n_kfs(10), - find_match_direct(true) - {} - } options_; - - size_t n_matches_; - size_t n_trials_; - - Reprojector(vk::AbstractCamera* cam, Map& map); - - ~Reprojector(); - - /// Project points from the map into the image. First finds keyframes with - /// overlapping field of view and projects only those map-points. - void reprojectMap( - FramePtr frame, - std::vector< std::pair >& overlap_kfs); - -private: - - /// A candidate is a point that projects into the image plane and for which we - /// will search a maching feature in the image. - struct Candidate { - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - Point* pt; //!< 3D point. - Vector2d px; //!< projected 2D pixel location. - Candidate(Point* pt, Vector2d& px) : pt(pt), px(px) {} - }; - typedef std::list Cell; - typedef std::vector CandidateGrid; - - /// The grid stores a set of candidate matches. For every grid cell we try to find one match. - struct Grid - { - CandidateGrid cells; - vector cell_order; - int cell_size; - int grid_n_cols; - int grid_n_rows; - }; - - Grid grid_; - Matcher matcher_; - Map& map_; - - static bool pointQualityComparator(Candidate& lhs, Candidate& rhs); - void initializeGrid(vk::AbstractCamera* cam); - void resetGrid(); - bool reprojectCell(Cell& cell, FramePtr frame); - bool reprojectPoint(FramePtr frame, Point* point); -}; - -} // namespace svo - -#endif // SVO_REPROJECTION_H_ diff --git a/CPU_version/svo/include/svo/sparse_img_align.h b/CPU_version/svo/include/svo/sparse_img_align.h deleted file mode 100644 index 1bedfed..0000000 --- a/CPU_version/svo/include/svo/sparse_img_align.h +++ /dev/null @@ -1,83 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_SPARSE_IMG_ALIGN_H_ -#define SVO_SPARSE_IMG_ALIGN_H_ - -#include -#include -#include - -namespace vk { -class AbstractCamera; -} - -namespace svo { - -class Feature; - -/// Optimize the pose of the frame by minimizing the photometric error of feature patches. -class SparseImgAlign : public vk::NLLSSolver<6, SE3> -{ - static const int patch_halfsize_ = 2; - static const int patch_size_ = 2*patch_halfsize_; - static const int patch_area_ = patch_size_*patch_size_; -public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - cv::Mat resimg_; - - SparseImgAlign( - int n_levels, - int min_level, - int n_iter, - Method method, - bool display, - bool verbose); - - size_t run( - FramePtr ref_frame, - FramePtr cur_frame); - - /// Return fisher information matrix, i.e. the Hessian of the log-likelihood - /// at the converged state. - Matrix getFisherInformation(); - -protected: - FramePtr ref_frame_; //!< reference frame, has depth for gradient pixels. - FramePtr cur_frame_; //!< only the image is known! - int level_; //!< current pyramid level on which the optimization runs. - bool display_; //!< display residual image. - int max_level_; //!< coarsest pyramid level for the alignment. - int min_level_; //!< finest pyramid level for the alignment. - - // cache: - Matrix jacobian_cache_; - bool have_ref_patch_cache_; - cv::Mat ref_patch_cache_; - std::vector visible_fts_; - - void precomputeReferencePatches(); - virtual double computeResiduals(const SE3& model, bool linearize_system, bool compute_weight_scale = false); - virtual int solve(); - virtual void update (const ModelType& old_model, ModelType& new_model); - virtual void startIteration(); - virtual void finishIteration(); -}; - -} // namespace svo - -#endif // SVO_SPARSE_IMG_ALIGN_H_ diff --git a/CPU_version/svo/include/svo/svoVisionFactor.h b/CPU_version/svo/include/svo/svoVisionFactor.h deleted file mode 100644 index cd00816..0000000 --- a/CPU_version/svo/include/svo/svoVisionFactor.h +++ /dev/null @@ -1,70 +0,0 @@ -// -// Created by root on 4/13/21. -// - -#ifndef SVO_SVOVISIONFACTOR_H -#define SVO_SVOVISIONFACTOR_H -#pragma once - -#include -#include -#include -#include -#include -#include -#include - -namespace svo { - - class VisionFactor: public gtsam::NoiseModelFactor1 { - - private: - // measurement information - gtsam::Point3 feature; /// body_P_sensor_; ///< TODO The pose of the sensor in the body frame - int level; ///< Image pyramid level where feature was extracted. - - public: - /// shorthand for a smart pointer to a factor - typedef boost::shared_ptr shared_ptr; - - /** - * Constructor - * @param feature Unit-bearing vector of the feature. - * @param model is the standard deviation - * @param pointKey is the index of the landmark - * @param poseKey is the index of the camera pose - * @param landmark 3D position of the landmark - * @param body_P_sensor is the transform from body to sensor frame (default identity) - * @param level Image pyramid level where feature was extracted. - */ - VisionFactor(const gtsam::Point3& feature, const gtsam::Point3& landmark,const int level, const gtsam::SharedNoiseModel& Hp, - gtsam::Key poseKey,boost::optional body_P_sensor = boost::none) : - gtsam::NoiseModelFactor1(Hp, poseKey), feature(feature), landmark(landmark),body_P_sensor_(body_P_sensor),level(level){} - virtual ~VisionFactor(){} - - /// error function - /// @param p the Estimated pose in Pose3 - /// @param H the optional Jacobian matrix, which use boost optional and has default null pointer - gtsam::Vector evaluateError(const gtsam::Pose3& p, boost::optional Hp = boost::none) const { - // note that use boost optional like a pointer - // only calculate jacobian matrix when non-null pointer exists - gtsam::Matrix26 J; - gtsam::Point3 point(p*landmark); - svo::Frame::jacobian_xyz2uv(point, J); - Vector2d e = (vk::project2d(feature) - vk::project2d(point))*1.0 / (1<( - gtsam::NonlinearFactor::shared_ptr(new VisionFactor(*this))); } - - }; - -} // namespace gtsamexamples -#endif //SVO_SVOVISIONFACTOR_H diff --git a/CPU_version/svo/package.xml b/CPU_version/svo/package.xml deleted file mode 100644 index 4d71cb3..0000000 --- a/CPU_version/svo/package.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - svo - 0.1.0 - - Monocular Visual Odometry - - Christian Forster - Christian Forster - GPLv3 - - - catkin - - - cmake_modules - roscpp - roslib - vikit_common - vikit_ros - - - roscpp - roslib - vikit_common - vikit_ros - \ No newline at end of file diff --git a/CPU_version/svo/src/bundle_adjustment.cpp b/CPU_version/svo/src/bundle_adjustment.cpp deleted file mode 100644 index eaba2b0..0000000 --- a/CPU_version/svo/src/bundle_adjustment.cpp +++ /dev/null @@ -1,435 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define SCHUR_TRICK 1 - -namespace svo { -namespace ba { - -void twoViewBA( - Frame* frame1, - Frame* frame2, - double reproj_thresh, - Map* map) -{ - // scale reprojection threshold in pixels to unit plane - reproj_thresh /= frame1->cam_->errorMultiplier2(); - - // init g2o - g2o::SparseOptimizer optimizer; - setupG2o(&optimizer); - - list edges; - size_t v_id = 0; - - // New Keyframe Vertex 1: This Keyframe is set to fixed! - g2oFrameSE3* v_frame1 = createG2oFrameSE3(frame1, v_id++, true); - optimizer.addVertex(v_frame1); - - // New Keyframe Vertex 2 - g2oFrameSE3* v_frame2 = createG2oFrameSE3(frame2, v_id++, false); - optimizer.addVertex(v_frame2); - - // Create Point Vertices - for(Features::iterator it_ftr=frame1->fts_.begin(); it_ftr!=frame1->fts_.end(); ++it_ftr) - { - Point* pt = (*it_ftr)->point; - if(pt == NULL) - continue; - g2oPoint* v_pt = createG2oPoint(pt->pos_, v_id++, false); - optimizer.addVertex(v_pt); - pt->v_pt_ = v_pt; - g2oEdgeSE3* e = createG2oEdgeSE3(v_frame1, v_pt, vk::project2d((*it_ftr)->f), true, reproj_thresh*Config::lobaRobustHuberWidth()); - optimizer.addEdge(e); - edges.push_back(EdgeContainerSE3(e, frame1, *it_ftr)); // TODO feature now links to frame, so we can simplify edge container! - - // find at which index the second frame observes the point - Feature* ftr_frame2 = pt->findFrameRef(frame2); - e = createG2oEdgeSE3(v_frame2, v_pt, vk::project2d(ftr_frame2->f), true, reproj_thresh*Config::lobaRobustHuberWidth()); - optimizer.addEdge(e); - edges.push_back(EdgeContainerSE3(e, frame2, ftr_frame2)); - } - - // Optimization - double init_error, final_error; - runSparseBAOptimizer(&optimizer, Config::lobaNumIter(), init_error, final_error); - printf("2-View BA: Error before/after = %f / %f\n", init_error, final_error); - - // Update Keyframe Positions - frame1->T_f_w_.rotation_matrix() = v_frame1->estimate().rotation().toRotationMatrix(); - frame1->T_f_w_.translation() = v_frame1->estimate().translation(); - frame2->T_f_w_.rotation_matrix() = v_frame2->estimate().rotation().toRotationMatrix(); - frame2->T_f_w_.translation() = v_frame2->estimate().translation(); - - // Update Mappoint Positions - for(Features::iterator it=frame1->fts_.begin(); it!=frame1->fts_.end(); ++it) - { - if((*it)->point == NULL) - continue; - (*it)->point->pos_ = (*it)->point->v_pt_->estimate(); - (*it)->point->v_pt_ = NULL; - } - - // Find Mappoints with too large reprojection error - const double reproj_thresh_squared = reproj_thresh*reproj_thresh; - size_t n_incorrect_edges = 0; - for(list::iterator it_e = edges.begin(); it_e != edges.end(); ++it_e) - if(it_e->edge->chi2() > reproj_thresh_squared) - { - if(it_e->feature->point != NULL) - { - map->safeDeletePoint(it_e->feature->point); - it_e->feature->point = NULL; - } - ++n_incorrect_edges; - } - - printf("2-View BA: Wrong edges = %zu\n", n_incorrect_edges); -} - -void localBA( - Frame* center_kf, - set* core_kfs, - Map* map, - size_t& n_incorrect_edges_1, - size_t& n_incorrect_edges_2, - double& init_error, - double& final_error) -{ - - // init g2o - g2o::SparseOptimizer optimizer; - setupG2o(&optimizer); - - list edges; - set mps; - list neib_kfs; - size_t v_id = 0; - size_t n_mps = 0; - size_t n_fix_kfs = 0; - size_t n_var_kfs = 1; - size_t n_edges = 0; - n_incorrect_edges_1 = 0; - n_incorrect_edges_2 = 0; - - // Add all core keyframes - for(set::iterator it_kf = core_kfs->begin(); it_kf != core_kfs->end(); ++it_kf) - { - g2oFrameSE3* v_kf = createG2oFrameSE3(it_kf->get(), v_id++, false); - (*it_kf)->v_kf_ = v_kf; - ++n_var_kfs; - assert(optimizer.addVertex(v_kf)); - - // all points that the core keyframes observe are also optimized: - for(Features::iterator it_pt=(*it_kf)->fts_.begin(); it_pt!=(*it_kf)->fts_.end(); ++it_pt) - if((*it_pt)->point != NULL) - mps.insert((*it_pt)->point); - } - - // Now go throug all the points and add a measurement. Add a fixed neighbour - // Keyframe if it is not in the set of core kfs - double reproj_thresh_2 = Config::lobaThresh() / center_kf->cam_->errorMultiplier2(); - double reproj_thresh_1 = Config::poseOptimThresh() / center_kf->cam_->errorMultiplier2(); - double reproj_thresh_1_squared = reproj_thresh_1*reproj_thresh_1; - for(set::iterator it_pt = mps.begin(); it_pt!=mps.end(); ++it_pt) - { - // Create point vertex - g2oPoint* v_pt = createG2oPoint((*it_pt)->pos_, v_id++, false); - (*it_pt)->v_pt_ = v_pt; - assert(optimizer.addVertex(v_pt)); - ++n_mps; - - // Add edges - list::iterator it_obs=(*it_pt)->obs_.begin(); - while(it_obs!=(*it_pt)->obs_.end()) - { - Vector2d error = vk::project2d((*it_obs)->f) - vk::project2d((*it_obs)->frame->w2f((*it_pt)->pos_)); - - if((*it_obs)->frame->v_kf_ == NULL) - { - // frame does not have a vertex yet -> it belongs to the neib kfs and - // is fixed. create one: - g2oFrameSE3* v_kf = createG2oFrameSE3((*it_obs)->frame, v_id++, true); - (*it_obs)->frame->v_kf_ = v_kf; - ++n_fix_kfs; - assert(optimizer.addVertex(v_kf)); - neib_kfs.push_back((*it_obs)->frame); - } - - // create edge - g2oEdgeSE3* e = createG2oEdgeSE3((*it_obs)->frame->v_kf_, v_pt, - vk::project2d((*it_obs)->f), - true, - reproj_thresh_2*Config::lobaRobustHuberWidth(), - 1.0 / (1<<(*it_obs)->level)); - assert(optimizer.addEdge(e)); - edges.push_back(EdgeContainerSE3(e, (*it_obs)->frame, *it_obs)); - ++n_edges; - ++it_obs; - } - } - - // structure only - g2o::StructureOnlySolver<3> structure_only_ba; - g2o::OptimizableGraph::VertexContainer points; - for (g2o::OptimizableGraph::VertexIDMap::const_iterator it = optimizer.vertices().begin(); it != optimizer.vertices().end(); ++it) - { - g2o::OptimizableGraph::Vertex* v = static_cast(it->second); - if (v->dimension() == 3 && v->edges().size() >= 2) - points.push_back(v); - } - structure_only_ba.calc(points, 10); - - // Optimization - if(Config::lobaNumIter() > 0) - runSparseBAOptimizer(&optimizer, Config::lobaNumIter(), init_error, final_error); - - // Update Keyframes - for(set::iterator it = core_kfs->begin(); it != core_kfs->end(); ++it) - { - (*it)->T_f_w_ = SE3( (*it)->v_kf_->estimate().rotation(), - (*it)->v_kf_->estimate().translation()); - (*it)->v_kf_ = NULL; - } - - for(list::iterator it = neib_kfs.begin(); it != neib_kfs.end(); ++it) - (*it)->v_kf_ = NULL; - - // Update Mappoints - for(set::iterator it = mps.begin(); it != mps.end(); ++it) - { - (*it)->pos_ = (*it)->v_pt_->estimate(); - (*it)->v_pt_ = NULL; - } - - // Remove Measurements with too large reprojection error - double reproj_thresh_2_squared = reproj_thresh_2*reproj_thresh_2; - for(list::iterator it = edges.begin(); it != edges.end(); ++it) - { - if(it->edge->chi2() > reproj_thresh_2_squared) //*(1<feature_->level)) - { - map->removePtFrameRef(it->frame, it->feature); - ++n_incorrect_edges_2; - } - } - - // TODO: delete points and edges! - init_error = sqrt(init_error)*center_kf->cam_->errorMultiplier2(); - final_error = sqrt(final_error)*center_kf->cam_->errorMultiplier2(); -} - -void globalBA(Map* map) -{ - // init g2o - g2o::SparseOptimizer optimizer; - setupG2o(&optimizer); - - list edges; - list< pair > incorrect_edges; - - // Go through all Keyframes - size_t v_id = 0; - double reproj_thresh_2 = Config::lobaThresh() / map->lastKeyframe()->cam_->errorMultiplier2(); - double reproj_thresh_1_squared = Config::poseOptimThresh() / map->lastKeyframe()->cam_->errorMultiplier2(); - reproj_thresh_1_squared *= reproj_thresh_1_squared; - for(list::iterator it_kf = map->keyframes_.begin(); - it_kf != map->keyframes_.end(); ++it_kf) - { - // New Keyframe Vertex - g2oFrameSE3* v_kf = createG2oFrameSE3(it_kf->get(), v_id++, false); - (*it_kf)->v_kf_ = v_kf; - optimizer.addVertex(v_kf); - for(Features::iterator it_ftr=(*it_kf)->fts_.begin(); it_ftr!=(*it_kf)->fts_.end(); ++it_ftr) - { - // for each keyframe add edges to all observed mapoints - Point* mp = (*it_ftr)->point; - if(mp == NULL) - continue; - g2oPoint* v_mp = mp->v_pt_; - if(v_mp == NULL) - { - // mappoint-vertex doesn't exist yet. create a new one: - v_mp = createG2oPoint(mp->pos_, v_id++, false); - mp->v_pt_ = v_mp; - optimizer.addVertex(v_mp); - } - - // Due to merging of mappoints it is possible that references in kfs suddenly - // have a very large reprojection error which may result in distorted results. - Vector2d error = vk::project2d((*it_ftr)->f) - vk::project2d((*it_kf)->w2f(mp->pos_)); - if(error.squaredNorm() > reproj_thresh_1_squared) - incorrect_edges.push_back(pair(*it_kf, *it_ftr)); - else - { - g2oEdgeSE3* e = createG2oEdgeSE3(v_kf, v_mp, vk::project2d((*it_ftr)->f), - true, - reproj_thresh_2*Config::lobaRobustHuberWidth()); - - edges.push_back(EdgeContainerSE3(e, it_kf->get(), *it_ftr)); - optimizer.addEdge(e); - } - } - } - - // Optimization - double init_error=0.0, final_error=0.0; - if(Config::lobaNumIter() > 0) - runSparseBAOptimizer(&optimizer, Config::lobaNumIter(), init_error, final_error); - - // Update Keyframe and MapPoint Positions - for(list::iterator it_kf = map->keyframes_.begin(); - it_kf != map->keyframes_.end(); ++it_kf) - { - (*it_kf)->T_f_w_ = SE3( (*it_kf)->v_kf_->estimate().rotation(), - (*it_kf)->v_kf_->estimate().translation()); - (*it_kf)->v_kf_ = NULL; - for(Features::iterator it_ftr=(*it_kf)->fts_.begin(); it_ftr!=(*it_kf)->fts_.end(); ++it_ftr) - { - Point* mp = (*it_ftr)->point; - if(mp == NULL) - continue; - if(mp->v_pt_ == NULL) - continue; // mp was updated before - mp->pos_ = mp->v_pt_->estimate(); - mp->v_pt_ = NULL; - } - } - - // Remove Measurements with too large reprojection error - for(list< pair >::iterator it=incorrect_edges.begin(); - it!=incorrect_edges.end(); ++it) - map->removePtFrameRef(it->first.get(), it->second); - - double reproj_thresh_2_squared = reproj_thresh_2*reproj_thresh_2; - for(list::iterator it = edges.begin(); it != edges.end(); ++it) - { - if(it->edge->chi2() > reproj_thresh_2_squared) - { - map->removePtFrameRef(it->frame, it->feature); - } - } -} - -void setupG2o(g2o::SparseOptimizer * optimizer) -{ - // TODO: What's happening with all this HEAP stuff? Memory Leak? - optimizer->setVerbose(false); - -#if SCHUR_TRICK - // solver - g2o::BlockSolver_6_3::LinearSolverType* linearSolver; - linearSolver = new g2o::LinearSolverCholmod(); - //linearSolver = new g2o::LinearSolverCSparse(); - - g2o::BlockSolver_6_3 * solver_ptr = new g2o::BlockSolver_6_3(linearSolver); - g2o::OptimizationAlgorithmLevenberg * solver = new g2o::OptimizationAlgorithmLevenberg(solver_ptr); -#else - g2o::BlockSolverX::LinearSolverType * linearSolver; - linearSolver = new g2o::LinearSolverCholmod(); - //linearSolver = new g2o::LinearSolverCSparse(); - g2o::BlockSolverX * solver_ptr = new g2o::BlockSolverX(linearSolver); - g2o::OptimizationAlgorithmLevenberg* solver = new g2o::OptimizationAlgorithmLevenberg(solver_ptr); -#endif - - solver->setMaxTrialsAfterFailure(5); - optimizer->setAlgorithm(solver); - - // setup camera - g2o::CameraParameters * cam_params = new g2o::CameraParameters(1.0, Vector2d(0.,0.), 0.); - cam_params->setId(0); - if (!optimizer->addParameter(cam_params)) { - assert(false); - } -} - -void -runSparseBAOptimizer(g2o::SparseOptimizer* optimizer, - unsigned int num_iter, - double& init_error, double& final_error) -{ - optimizer->initializeOptimization(); - optimizer->computeActiveErrors(); - init_error = optimizer->activeChi2(); - optimizer->optimize(num_iter); - final_error = optimizer->activeChi2(); -} - -g2oFrameSE3* -createG2oFrameSE3(Frame* frame, size_t id, bool fixed) -{ - g2oFrameSE3* v = new g2oFrameSE3(); - v->setId(id); - v->setFixed(fixed); - v->setEstimate(g2o::SE3Quat(frame->T_f_w_.unit_quaternion(), frame->T_f_w_.translation())); - return v; -} - -g2oPoint* -createG2oPoint(Vector3d pos, - size_t id, - bool fixed) -{ - g2oPoint* v = new g2oPoint(); - v->setId(id); -#if SCHUR_TRICK - v->setMarginalized(true); -#endif - v->setFixed(fixed); - v->setEstimate(pos); - return v; -} - -g2oEdgeSE3* -createG2oEdgeSE3( g2oFrameSE3* v_frame, - g2oPoint* v_point, - const Vector2d& f_up, - bool robust_kernel, - double huber_width, - double weight) -{ - g2oEdgeSE3* e = new g2oEdgeSE3(); - e->setVertex(0, dynamic_cast(v_point)); - e->setVertex(1, dynamic_cast(v_frame)); - e->setMeasurement(f_up); - e->information() = weight * Eigen::Matrix2d::Identity(2,2); - g2o::RobustKernelHuber* rk = new g2o::RobustKernelHuber(); // TODO: memory leak - rk->setDelta(huber_width); - e->setRobustKernel(rk); - e->setParameterId(0, 0); //old: e->setId(v_point->id()); - return e; -} - -} // namespace ba -} // namespace svo diff --git a/CPU_version/svo/src/config.cpp b/CPU_version/svo/src/config.cpp deleted file mode 100644 index e8475fe..0000000 --- a/CPU_version/svo/src/config.cpp +++ /dev/null @@ -1,102 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifdef SVO_USE_ROS -#include -#endif -#include - -namespace svo { - -Config::Config() : -#ifdef SVO_USE_ROS - trace_name(vk::getParam("svo/trace_name", "svo")), - trace_dir(vk::getParam("svo/trace_dir", "/tmp")), - n_pyr_levels(vk::getParam("svo/n_pyr_levels", 3)), - use_imu(vk::getParam("svo/use_imu", false)), - core_n_kfs(vk::getParam("svo/core_n_kfs", 3)), - map_scale(vk::getParam("svo/map_scale", 1.0)), - grid_size(vk::getParam("svo/grid_size", 30)), - init_min_disparity(vk::getParam("svo/init_min_disparity", 50.0)), - init_min_tracked(vk::getParam("svo/init_min_tracked", 50)), - init_min_inliers(vk::getParam("svo/init_min_inliers", 40)), - klt_max_level(vk::getParam("svo/klt_max_level", 4)), - klt_min_level(vk::getParam("svo/klt_min_level", 2)), - reproj_thresh(vk::getParam("svo/reproj_thresh", 2.0)), - poseoptim_thresh(vk::getParam("svo/poseoptim_thresh", 2.0)), - poseoptim_num_iter(vk::getParam("svo/poseoptim_num_iter", 10)), - structureoptim_max_pts(vk::getParam("svo/structureoptim_max_pts", 20)), - structureoptim_num_iter(vk::getParam("svo/structureoptim_num_iter", 5)), - loba_thresh(vk::getParam("svo/loba_thresh", 2.0)), - loba_robust_huber_width(vk::getParam("svo/loba_robust_huber_width", 1.0)), - loba_num_iter(vk::getParam("svo/loba_num_iter", 0)), - kfselect_mindist(vk::getParam("svo/kfselect_mindist", 0.12)), - triang_min_corner_score(vk::getParam("svo/triang_min_corner_score", 20.0)), - triang_half_patch_size(vk::getParam("svo/triang_half_patch_size", 4)), - subpix_n_iter(vk::getParam("svo/subpix_n_iter", 10)), - max_n_kfs(vk::getParam("svo/max_n_kfs", 10)), - img_imu_delay(vk::getParam("svo/img_imu_delay", 0.0)), - max_fts(vk::getParam("svo/max_fts", 120)), - quality_min_fts(vk::getParam("svo/quality_min_fts", 50)), - quality_max_drop_fts(vk::getParam("svo/quality_max_drop_fts", 40)), - ACC_noise(vk::getParam("svo/ACC_noise", 1e-4)), - GYO_noise(vk::getParam("svo/GYO_noise", 1e-4)), - iuc(vk::getParam("svo/IUC", 1e-1)), - abc(vk::getParam("svo/ABC", 1e-1)), - gbc(vk::getParam("svo/GBC", 1e-1)), - ebp(vk::getParam("svo/EBP", 1e-2)), - nrp(vk::getParam("svo/NRP", 1e-5)) -#else - trace_name("svo"), - trace_dir("/tmp"), - n_pyr_levels(3), - use_imu(false), - core_n_kfs(3), - map_scale(1.0), - grid_size(25), - init_min_disparity(50.0), - init_min_tracked(50), - init_min_inliers(40), - klt_max_level(4), - klt_min_level(2), - reproj_thresh(2.0), - poseoptim_thresh(2.0), - poseoptim_num_iter(10), - structureoptim_max_pts(20), - structureoptim_num_iter(5), - loba_thresh(2.0), - loba_robust_huber_width(1.0), - loba_num_iter(0), - kfselect_mindist(0.12), - triang_min_corner_score(20.0), - triang_half_patch_size(4), - subpix_n_iter(10), - max_n_kfs(0), - img_imu_delay(0.0), - max_fts(120), - quality_min_fts(50), - quality_max_drop_fts(40) -#endif -{} - -Config& Config::getInstance() -{ - static Config instance; // Instantiated on first use and guaranteed to be destroyed - return instance; -} - -} // namespace svo - diff --git a/CPU_version/svo/src/depth_filter.cpp b/CPU_version/svo/src/depth_filter.cpp deleted file mode 100644 index db24408..0000000 --- a/CPU_version/svo/src/depth_filter.cpp +++ /dev/null @@ -1,352 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace svo { - -int Seed::batch_counter = 0; -int Seed::seed_counter = 0; - -Seed::Seed(Feature* ftr, float depth_mean, float depth_min) : - batch_id(batch_counter), - id(seed_counter++), - ftr(ftr), - a(10), - b(10), - mu(1.0/depth_mean), - z_range(1.0/depth_min), - sigma2(z_range*z_range/36) -{} - -DepthFilter::DepthFilter(feature_detection::DetectorPtr feature_detector, callback_t seed_converged_cb) : - feature_detector_(feature_detector), - seed_converged_cb_(seed_converged_cb), - seeds_updating_halt_(false), - thread_(NULL), - new_keyframe_set_(false), - new_keyframe_min_depth_(0.0), - new_keyframe_mean_depth_(0.0) -{} - -DepthFilter::~DepthFilter() -{ - stopThread(); - SVO_INFO_STREAM("DepthFilter destructed."); -} - -void DepthFilter::startThread() -{ - thread_ = new boost::thread(&DepthFilter::updateSeedsLoop, this); -} - -void DepthFilter::stopThread() -{ - SVO_INFO_STREAM("DepthFilter stop thread invoked."); - if(thread_ != NULL) - { - SVO_INFO_STREAM("DepthFilter interrupt and join thread... "); - seeds_updating_halt_ = true; - thread_->interrupt(); - thread_->join(); - thread_ = NULL; - } -} - -void DepthFilter::addFrame(FramePtr frame) -{ - if(thread_ != NULL) - { - { - lock_t lock(frame_queue_mut_); - if(frame_queue_.size() > 2) - frame_queue_.pop(); - frame_queue_.push(frame); - } - seeds_updating_halt_ = false; - frame_queue_cond_.notify_one(); - } - else - updateSeeds(frame); -} - -void DepthFilter::addKeyframe(FramePtr frame, double depth_mean, double depth_min) -{ - new_keyframe_min_depth_ = depth_min; - new_keyframe_mean_depth_ = depth_mean; - if(thread_ != NULL) - { - new_keyframe_ = frame; - new_keyframe_set_ = true; - seeds_updating_halt_ = true; - frame_queue_cond_.notify_one(); - } - else - initializeSeeds(frame); -} - -void DepthFilter::initializeSeeds(FramePtr frame) -{ - Features new_features; - feature_detector_->setExistingFeatures(frame->fts_); - feature_detector_->detect(frame.get(), frame->img_pyr_, - Config::triangMinCornerScore(), new_features); - - // initialize a seed for every new feature - seeds_updating_halt_ = true; - lock_t lock(seeds_mut_); // by locking the updateSeeds function stops - ++Seed::batch_counter; - std::for_each(new_features.begin(), new_features.end(), [&](Feature* ftr){ - seeds_.push_back(Seed(ftr, new_keyframe_mean_depth_, new_keyframe_min_depth_)); - }); - - if(options_.verbose) - SVO_INFO_STREAM("DepthFilter: Initialized "<::iterator it=seeds_.begin(); - size_t n_removed = 0; - while(it!=seeds_.end()) - { - if(it->ftr->frame == frame.get()) - { - it = seeds_.erase(it); - ++n_removed; - } - else - ++it; - } - seeds_updating_halt_ = false; -} - -void DepthFilter::reset() -{ - seeds_updating_halt_ = true; - { - lock_t lock(seeds_mut_); - seeds_.clear(); - } - lock_t lock(); - while(!frame_queue_.empty()) - frame_queue_.pop(); - seeds_updating_halt_ = false; - - if(options_.verbose) - SVO_INFO_STREAM("DepthFilter: RESET."); -} - -void DepthFilter::updateSeedsLoop() -{ - while(!boost::this_thread::interruption_requested()) - { - FramePtr frame; - { - lock_t lock(frame_queue_mut_); - while(frame_queue_.empty() && new_keyframe_set_ == false) - frame_queue_cond_.wait(lock); - if(new_keyframe_set_) - { - new_keyframe_set_ = false; - seeds_updating_halt_ = false; - clearFrameQueue(); - frame = new_keyframe_; - } - else - { - frame = frame_queue_.front(); - frame_queue_.pop(); - } - } - updateSeeds(frame); - if(frame->isKeyframe()) - initializeSeeds(frame); - } -} - -void DepthFilter::updateSeeds(FramePtr frame) -{ - // update only a limited number of seeds, because we don't have time to do it - // for all the seeds in every frame! - size_t n_updates=0, n_failed_matches=0, n_seeds = seeds_.size(); - lock_t lock(seeds_mut_); - std::list::iterator it=seeds_.begin(); - - const double focal_length = frame->cam_->errorMultiplier2(); - double px_noise = 1.0; - double px_error_angle = atan(px_noise/(2.0*focal_length))*2.0; // law of chord (sehnensatz) - - while( it!=seeds_.end()) - { - // set this value true when seeds updating should be interrupted - if(seeds_updating_halt_) - return; - - // check if seed is not already too old - if((Seed::batch_counter - it->batch_id) > options_.max_n_kfs) { - it = seeds_.erase(it); - continue; - } - - // check if point is visible in the current image - SE3 T_ref_cur = it->ftr->frame->T_f_w_ * frame->T_f_w_.inverse(); - const Vector3d xyz_f(T_ref_cur.inverse()*(1.0/it->mu * it->ftr->f) ); - if(xyz_f.z() < 0.0) { - ++it; // behind the camera - continue; - } - if(!frame->cam_->isInFrame(frame->f2c(xyz_f).cast())) { - ++it; // point does not project in image - continue; - } - - // we are using inverse depth coordinates - float z_inv_min = it->mu + sqrt(it->sigma2); - float z_inv_max = max(it->mu - sqrt(it->sigma2), 0.00000001f); - double z; - if(!matcher_.findEpipolarMatchDirect( - *it->ftr->frame, *frame, *it->ftr, 1.0/it->mu, 1.0/z_inv_min, 1.0/z_inv_max, z)) - { - it->b++; // increase outlier probability when no match was found - ++it; - ++n_failed_matches; - continue; - } - - // compute tau - double tau = computeTau(T_ref_cur, it->ftr->f, z, px_error_angle); - double tau_inverse = 0.5 * (1.0/max(0.0000001, z-tau) - 1.0/(z+tau)); - - // update the estimate - updateSeed(1./z, tau_inverse*tau_inverse, &*it); - ++n_updates; - - if(frame->isKeyframe()) - { - // The feature detector should not initialize new seeds close to this location - feature_detector_->setGridOccpuancy(matcher_.px_cur_); - } - - // if the seed has converged, we initialize a new candidate point and remove the seed - if(sqrt(it->sigma2) < it->z_range/options_.seed_convergence_sigma2_thresh) - { - assert(it->ftr->point == NULL); // TODO this should not happen anymore - Vector3d xyz_world(it->ftr->frame->T_f_w_.inverse() * (it->ftr->f * (1.0/it->mu))); - Point* point = new Point(xyz_world, it->ftr); - it->ftr->point = point; - /* FIXME it is not threadsafe to add a feature to the frame here. - if(frame->isKeyframe()) - { - Feature* ftr = new Feature(frame.get(), matcher_.px_cur_, matcher_.search_level_); - ftr->point = point; - point->addFrameRef(ftr); - frame->addFeature(ftr); - it->ftr->frame->addFeature(it->ftr); - } - else - */ - { - seed_converged_cb_(point, it->sigma2); // put in candidate list - } - it = seeds_.erase(it); - } - else if(isnan(z_inv_min)) - { - SVO_WARN_STREAM("z_min is NaN"); - it = seeds_.erase(it); - } - else - ++it; - } -} - -void DepthFilter::clearFrameQueue() -{ - while(!frame_queue_.empty()) - frame_queue_.pop(); -} - -void DepthFilter::getSeedsCopy(const FramePtr& frame, std::list& seeds) -{ - lock_t lock(seeds_mut_); - for(std::list::iterator it=seeds_.begin(); it!=seeds_.end(); ++it) - { - if (it->ftr->frame == frame.get()) - seeds.push_back(*it); - } -} - -void DepthFilter::updateSeed(const float x, const float tau2, Seed* seed) -{ - float norm_scale = sqrt(seed->sigma2 + tau2); - if(std::isnan(norm_scale)) - return; - boost::math::normal_distribution nd(seed->mu, norm_scale); - float s2 = 1./(1./seed->sigma2 + 1./tau2); - float m = s2*(seed->mu/seed->sigma2 + x/tau2); - float C1 = seed->a/(seed->a+seed->b) * boost::math::pdf(nd, x); - float C2 = seed->b/(seed->a+seed->b) * 1./seed->z_range; - float normalization_constant = C1 + C2; - C1 /= normalization_constant; - C2 /= normalization_constant; - float f = C1*(seed->a+1.)/(seed->a+seed->b+1.) + C2*seed->a/(seed->a+seed->b+1.); - float e = C1*(seed->a+1.)*(seed->a+2.)/((seed->a+seed->b+1.)*(seed->a+seed->b+2.)) - + C2*seed->a*(seed->a+1.0f)/((seed->a+seed->b+1.0f)*(seed->a+seed->b+2.0f)); - - // update parameters - float mu_new = C1*m+C2*seed->mu; - seed->sigma2 = C1*(s2 + m*m) + C2*(seed->sigma2 + seed->mu*seed->mu) - mu_new*mu_new; - seed->mu = mu_new; - seed->a = (e-f)/(f-e/f); - seed->b = seed->a*(1.0f-f)/f; -} - -double DepthFilter::computeTau( - const SE3& T_ref_cur, - const Vector3d& f, - const double z, - const double px_error_angle) -{ - Vector3d t(T_ref_cur.translation()); - Vector3d a = f*z-t; - double t_norm = t.norm(); - double a_norm = a.norm(); - double alpha = acos(f.dot(t)/t_norm); // dot product - double beta = acos(a.dot(-t)/(t_norm*a_norm)); // dot product - double beta_plus = beta + px_error_angle; - double gamma_plus = PI-alpha-beta_plus; // triangle angles sum to PI - double z_plus = t_norm*sin(beta_plus)/sin(gamma_plus); // law of sines - return (z_plus - z); // tau -} - -} // namespace svo diff --git a/CPU_version/svo/src/feature_alignment.cpp b/CPU_version/svo/src/feature_alignment.cpp deleted file mode 100644 index faa4027..0000000 --- a/CPU_version/svo/src/feature_alignment.cpp +++ /dev/null @@ -1,601 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifdef __SSE2__ -#include -#endif -#ifdef __ARM_NEON__ -#include -#endif -#include - -namespace svo { -namespace feature_alignment { - -#define SUBPIX_VERBOSE 0 - -bool align1D( - const cv::Mat& cur_img, - const Vector2f& dir, // direction in which the patch is allowed to move - uint8_t* ref_patch_with_border, - uint8_t* ref_patch, - const int n_iter, - Vector2d& cur_px_estimate, - double& h_inv) -{ - const int halfpatch_size_ = 4; - const int patch_size = 8; - const int patch_area = 64; - bool converged=false; - - // compute derivative of template and prepare inverse compositional - float __attribute__((__aligned__(16))) ref_patch_dv[patch_area]; - Matrix2f H; H.setZero(); - - // compute gradient and hessian - const int ref_step = patch_size+2; - float* it_dv = ref_patch_dv; - for(int y=0; y= cur_img.cols-halfpatch_size_ || v_r >= cur_img.rows-halfpatch_size_) - break; - - if(isnan(u) || isnan(v)) // TODO very rarely this can happen, maybe H is singular? should not be at corner.. check - return false; - - // compute interpolation weights - float subpix_x = u-u_r; - float subpix_y = v-v_r; - float wTL = (1.0-subpix_x)*(1.0-subpix_y); - float wTR = subpix_x * (1.0-subpix_y); - float wBL = (1.0-subpix_x)*subpix_y; - float wBR = subpix_x * subpix_y; - - // loop through search_patch, interpolate - uint8_t* it_ref = ref_patch; - float* it_ref_dv = ref_patch_dv; - float new_chi2 = 0.0; - Vector2f Jres; Jres.setZero(); - for(int y=0; y 0 && new_chi2 > chi2) - { -#if SUBPIX_VERBOSE - cout << "error increased." << endl; -#endif - u -= update[0]; - v -= update[1]; - break; - } - - chi2 = new_chi2; - update = Hinv * Jres; - u += update[0]*dir[0]; - v += update[0]*dir[1]; - mean_diff += update[1]; - -#if SUBPIX_VERBOSE - cout << "Iter " << iter << ":" - << "\t u=" << u << ", v=" << v - << "\t update = " << update[0] << ", " << update[1] - << "\t new chi2 = " << new_chi2 << endl; -#endif - - if(update[0]*update[0]+update[1]*update[1] < min_update_squared) - { -#if SUBPIX_VERBOSE - cout << "converged." << endl; -#endif - converged=true; - break; - } - } - - cur_px_estimate << u, v; - return converged; -} - -bool align2D( - const cv::Mat& cur_img, - uint8_t* ref_patch_with_border, - uint8_t* ref_patch, - const int n_iter, - Vector2d& cur_px_estimate, - bool no_simd) -{ -#ifdef __ARM_NEON__ - if(!no_simd) - return align2D_NEON(cur_img, ref_patch_with_border, ref_patch, n_iter, cur_px_estimate); -#endif - - const int halfpatch_size_ = 4; - const int patch_size_ = 8; - const int patch_area_ = 64; - bool converged=false; - - // compute derivative of template and prepare inverse compositional - float __attribute__((__aligned__(16))) ref_patch_dx[patch_area_]; - float __attribute__((__aligned__(16))) ref_patch_dy[patch_area_]; - Matrix3f H; H.setZero(); - - // compute gradient and hessian - const int ref_step = patch_size_+2; - float* it_dx = ref_patch_dx; - float* it_dy = ref_patch_dy; - for(int y=0; y= cur_img.cols-halfpatch_size_ || v_r >= cur_img.rows-halfpatch_size_) - break; - - if(isnan(u) || isnan(v)) // TODO very rarely this can happen, maybe H is singular? should not be at corner.. check - return false; - - // compute interpolation weights - float subpix_x = u-u_r; - float subpix_y = v-v_r; - float wTL = (1.0-subpix_x)*(1.0-subpix_y); - float wTR = subpix_x * (1.0-subpix_y); - float wBL = (1.0-subpix_x)*subpix_y; - float wBR = subpix_x * subpix_y; - - // loop through search_patch, interpolate - uint8_t* it_ref = ref_patch; - float* it_ref_dx = ref_patch_dx; - float* it_ref_dy = ref_patch_dy; -// float new_chi2 = 0.0; - Vector3f Jres; Jres.setZero(); - for(int y=0; y 0 && new_chi2 > chi2) - { -#if SUBPIX_VERBOSE - cout << "error increased." << endl; -#endif - u -= update[0]; - v -= update[1]; - break; - } - chi2 = new_chi2; -*/ - update = Hinv * Jres; - u += update[0]; - v += update[1]; - mean_diff += update[2]; - -#if SUBPIX_VERBOSE - cout << "Iter " << iter << ":" - << "\t u=" << u << ", v=" << v - << "\t update = " << update[0] << ", " << update[1] -// << "\t new chi2 = " << new_chi2 << endl; -#endif - - if(update[0]*update[0]+update[1]*update[1] < min_update_squared) - { -#if SUBPIX_VERBOSE - cout << "converged." << endl; -#endif - converged=true; - break; - } - } - - cur_px_estimate << u, v; - return converged; -} - -#define DESCALE(x,n) (((x) + (1 << ((n)-1))) >> (n)) // rounds to closest integer and descales - -bool align2D_SSE2( - const cv::Mat& cur_img, - uint8_t* ref_patch_with_border, - uint8_t* ref_patch, - const int n_iter, - Vector2d& cur_px_estimate) -{ - // TODO: This function should not be used as the alignment is not robust to illumination changes! - const int halfpatch_size = 4; - const int patch_size = 8; - const int patch_area = 64; - bool converged=false; - const int W_BITS = 14; - - // compute derivative of template and prepare inverse compositional - int16_t __attribute__((__aligned__(16))) ref_patch_dx[patch_area]; - int16_t __attribute__((__aligned__(16))) ref_patch_dy[patch_area]; - - // compute gradient and hessian - const int ref_step = patch_size+2; - int16_t* it_dx = ref_patch_dx; - int16_t* it_dy = ref_patch_dy; - float A11=0, A12=0, A22=0; - for(int y=0; y(it[1]) - it[-1]; - int16_t dy = static_cast(it[ref_step]) - it[-ref_step]; - *it_dx = dx; - *it_dy = dy; // we are missing a factor 1/2 - A11 += static_cast(dx*dx); // we are missing a factor 1/4 - A12 += static_cast(dx*dy); - A22 += static_cast(dy*dy); - } - } - - // Compute pixel location in new image: - float u = cur_px_estimate.x(); - float v = cur_px_estimate.y(); - - // termination condition - const float min_update_squared = 0.03*0.03; - const int cur_step = cur_img.step.p[0]; - const float Dinv = 1.0f/(A11*A22 - A12*A12); // we are missing an extra factor 16 - float chi2 = 0; - float update_u = 0, update_v = 0; - - for(int iter = 0; iter= cur_img.cols-halfpatch_size || v_r >= cur_img.rows-halfpatch_size) - break; - - if(isnan(u) || isnan(v)) // TODO very rarely this can happen, maybe H is singular? should not be at corner.. check - return false; - - float subpix_x = u-u_r; - float subpix_y = v-v_r; - float b1=0, b2=0; - float new_chi2 = 0.0; - -#ifdef __SSE2__ - // compute bilinear interpolation weights - int wTL = static_cast((1.0f-subpix_x)*(1.0f-subpix_y)*(1 << W_BITS)); - int wTR = static_cast(subpix_x * (1.0f-subpix_y)*(1 << W_BITS)); - int wBL = static_cast((1.0f-subpix_x)*subpix_y*(1 << W_BITS)); - int wBR = (1 << W_BITS) - wTL - wTR - wBL; - - __m128i qw0 = _mm_set1_epi32(wTL + (wTR << 16)); // Sets the 4 signed 32-bit integer values to [wTL, wTR]. - __m128i qw1 = _mm_set1_epi32(wBL + (wBR << 16)); - __m128i z = _mm_setzero_si128(); - __m128 qb0 = _mm_setzero_ps(); // 4 floats - __m128 qb1 = _mm_setzero_ps(); // 4 floats - __m128i qdelta = _mm_set1_epi32(1 << (W_BITS-1)); - for(int y=0; y(it[1] - it[-1]); - *it_dy = static_cast(it[ref_step] - it[-ref_step]); // divide by 2 missing - Vector3f J(*it_dx, *it_dy, 1.0f); - H += J*J.transpose(); - } - } - Matrix3f Hinv = H.inverse(); - float mean_diff = 0.0; - - // Compute pixel location in new image: - float u = cur_px_estimate.x(); - float v = cur_px_estimate.y(); - - // termination condition - const float min_update_squared = 0.03*0.03; - const int cur_step = cur_img.step.p[0]; - Vector3f update; - Vector3f Jres; - for(int iter = 0; iter= cur_img.cols-halfpatch_size || v_r >= cur_img.rows-halfpatch_size) - break; - - if(isnan(u) || isnan(v)) // TODO very rarely this can happen, maybe H is singular? should not be at corner.. check - return false; - - float subpix_x = u-u_r; - float subpix_y = v-v_r; - float b1=0, b2=0; - -#ifdef __ARM_NEON__ - const int SHIFT_BITS = 7; - const uint16_t wTL = static_cast((1.0f-subpix_x)*(1.0f-subpix_y)*(1<(subpix_x*(1.0f-subpix_y)*(1<((1.0f-subpix_x)*subpix_y*(1<((1 << SHIFT_BITS) - wTL - wTR - wBL); - - // initialize result to zero - int32x4_t vb1 = vdupq_n_s32(0); - int32x4_t vb2 = vdupq_n_s32(0); - int16x8_t vmean_diff = vdupq_n_s16( (int16_t) (mean_diff+0.5) ); - int16x8_t vres_sum = vdupq_n_s16(0); - for(int y=0; y Vr[i] := Va[i] + Vb[i] * Vc[i] - // int32x4_t vmlal_s16(int32x4_t a, int16x4_t b, int16x4_t c); // VMLAL.S16 q0,d0,d0 - int16x8_t grad = vld1q_s16(ref_patch_dx + y*patch_size); - vb1 = vmlal_s16(vb1, vget_low_s16(grad), vget_low_s16(res)); - vb1 = vmlal_s16(vb1, vget_high_s16(grad), vget_high_s16(res)); - - grad = vld1q_s16(ref_patch_dy + y*patch_size); - vb2 = vmlal_s16(vb2, vget_low_s16(grad), vget_low_s16(res)); - vb2 = vmlal_s16(vb2, vget_high_s16(grad), vget_high_s16(res)); - } - - // finally, sum results of vb1, vb2 and vres_sum - int32x2_t tmp; - tmp = vpadd_s32(vget_low_s32(vb1), vget_high_s32(vb1)); - Jres[0] = -vget_lane_s32(tmp, 0) - vget_lane_s32(tmp, 1); - - tmp = vpadd_s32(vget_low_s32(vb2), vget_high_s32(vb2)); - Jres[1] = -vget_lane_s32(tmp, 0) - vget_lane_s32(tmp, 1); - - int32x4_t vres_sum1 = vpaddlq_s16(vres_sum); - tmp = vpadd_s32(vget_low_s32(vres_sum1), vget_high_s32(vres_sum1)); - Jres[2] = -vget_lane_s32(tmp, 0) - vget_lane_s32(tmp, 1); -#endif - - update = Hinv * Jres * 2; // * 2 to compensate because above, we did not compute the derivative correctly - u += update[0]; - v += update[1]; - mean_diff += update[2]; - -#if SUBPIX_VERBOSE - cout << "Iter " << iter << ":" - << "\t u=" << u << ", v=" << v - << "\t update = " << update[0] << ", " << update[1] << endl; -#endif - - if(update[0]*update[0]+update[1]*update[1] < min_update_squared) - { -#if SUBPIX_VERBOSE - cout << "converged." << endl; -#endif - converged=true; - break; - } - } - - cur_px_estimate << u, v; - return converged; -} - -} // namespace feature_alignment -} // namespace svo diff --git a/CPU_version/svo/src/feature_detection.cpp b/CPU_version/svo/src/feature_detection.cpp deleted file mode 100644 index 98183f8..0000000 --- a/CPU_version/svo/src/feature_detection.cpp +++ /dev/null @@ -1,118 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include - -namespace svo { -namespace feature_detection { - -AbstractDetector::AbstractDetector( - const int img_width, - const int img_height, - const int cell_size, - const int n_pyr_levels) : - cell_size_(cell_size), - n_pyr_levels_(n_pyr_levels), - grid_n_cols_(ceil(static_cast(img_width)/cell_size_)), - grid_n_rows_(ceil(static_cast(img_height)/cell_size_)), - grid_occupancy_(grid_n_cols_*grid_n_rows_, false) -{} - -void AbstractDetector::resetGrid() -{ - std::fill(grid_occupancy_.begin(), grid_occupancy_.end(), false); -} - -void AbstractDetector::setExistingFeatures(const Features& fts) -{ - std::for_each(fts.begin(), fts.end(), [&](Feature* i){ - grid_occupancy_.at( - static_cast(i->px[1]/cell_size_)*grid_n_cols_ - + static_cast(i->px[0]/cell_size_)) = true; - }); -} - -void AbstractDetector::setGridOccpuancy(const Vector2d& px) -{ - grid_occupancy_.at( - static_cast(px[1]/cell_size_)*grid_n_cols_ - + static_cast(px[0]/cell_size_)) = true; -} - -FastDetector::FastDetector( - const int img_width, - const int img_height, - const int cell_size, - const int n_pyr_levels) : - AbstractDetector(img_width, img_height, cell_size, n_pyr_levels) -{} - -void FastDetector::detect( - Frame* frame, - const ImgPyr& img_pyr, - const double detection_threshold, - Features& fts) -{ - Corners corners(grid_n_cols_*grid_n_rows_, Corner(0,0,detection_threshold,0,0.0f)); - for(int L=0; L fast_corners; -#if __SSE2__ - fast::fast_corner_detect_10_sse2( - (fast::fast_byte*) img_pyr[L].data, img_pyr[L].cols, - img_pyr[L].rows, img_pyr[L].cols, 20, fast_corners); -#elif HAVE_FAST_NEON - fast::fast_corner_detect_9_neon( - (fast::fast_byte*) img_pyr[L].data, img_pyr[L].cols, - img_pyr[L].rows, img_pyr[L].cols, 20, fast_corners); -#else - fast::fast_corner_detect_10( - (fast::fast_byte*) img_pyr[L].data, img_pyr[L].cols, - img_pyr[L].rows, img_pyr[L].cols, 20, fast_corners); -#endif - vector scores, nm_corners; - fast::fast_corner_score_10((fast::fast_byte*) img_pyr[L].data, img_pyr[L].cols, fast_corners, 20, scores); - fast::fast_nonmax_3x3(fast_corners, scores, nm_corners); - - for(auto it=nm_corners.begin(), ite=nm_corners.end(); it!=ite; ++it) - { - fast::fast_xy& xy = fast_corners.at(*it); - const int k = static_cast((xy.y*scale)/cell_size_)*grid_n_cols_ - + static_cast((xy.x*scale)/cell_size_); - if(grid_occupancy_[k]) - continue; - const float score = vk::shiTomasiScore(img_pyr[L], xy.x, xy.y); - if(score > corners.at(k).score) - corners.at(k) = Corner(xy.x*scale, xy.y*scale, score, L, 0.0f); - } - } - - // Create feature for every corner that has high enough corner score - std::for_each(corners.begin(), corners.end(), [&](Corner& c) { - if(c.score > detection_threshold) - fts.push_back(new Feature(frame, Vector2d(c.x, c.y), c.level)); - }); - - resetGrid(); -} - -} // namespace feature_detection -} // namespace svo - diff --git a/CPU_version/svo/src/frame.cpp b/CPU_version/svo/src/frame.cpp deleted file mode 100644 index 44ddab6..0000000 --- a/CPU_version/svo/src/frame.cpp +++ /dev/null @@ -1,190 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace svo { - -int Frame::frame_counter_ = 0; - -Frame::Frame(vk::AbstractCamera* cam, const cv::Mat& img, double timestamp) : - id_(frame_counter_++), - timestamp_(timestamp), - cam_(cam), - key_pts_(5), - is_keyframe_(false), - v_kf_(NULL) -{ - initFrame(img); -} - -Frame::~Frame() -{ - std::for_each(fts_.begin(), fts_.end(), [&](Feature* i){delete i;}); -} - -void Frame::initFrame(const cv::Mat& img) -{ - // check image - if(img.empty() || img.type() != CV_8UC1 || img.cols != cam_->width() || img.rows != cam_->height()) - throw std::runtime_error("Frame: provided image has not the same size as the camera model or image is not grayscale"); - - // Set keypoints to NULL - std::for_each(key_pts_.begin(), key_pts_.end(), [&](Feature* ftr){ ftr=NULL; }); - - // Build Image Pyramid - frame_utils::createImgPyramid(img, max(Config::nPyrLevels(), Config::kltMaxLevel()+1), img_pyr_); -} - -void Frame::setKeyframe() -{ - is_keyframe_ = true; - setKeyPoints(); -} - -void Frame::addFeature(Feature* ftr) -{ - fts_.push_back(ftr); -} - -void Frame::setKeyPoints() -{ - for(size_t i = 0; i < 5; ++i) - if(key_pts_[i] != NULL) - if(key_pts_[i]->point == NULL) - key_pts_[i] = NULL; - - std::for_each(fts_.begin(), fts_.end(), [&](Feature* ftr){ if(ftr->point != NULL) checkKeyPoints(ftr); }); -} - -void Frame::checkKeyPoints(Feature* ftr) -{ - const int cu = cam_->width()/2; - const int cv = cam_->height()/2; - - // center pixel - if(key_pts_[0] == NULL) - key_pts_[0] = ftr; - else if(std::max(std::fabs(ftr->px[0]-cu), std::fabs(ftr->px[1]-cv)) - < std::max(std::fabs(key_pts_[0]->px[0]-cu), std::fabs(key_pts_[0]->px[1]-cv))) - key_pts_[0] = ftr; - - if(ftr->px[0] >= cu && ftr->px[1] >= cv) - { - if(key_pts_[1] == NULL) - key_pts_[1] = ftr; - else if((ftr->px[0]-cu) * (ftr->px[1]-cv) - > (key_pts_[1]->px[0]-cu) * (key_pts_[1]->px[1]-cv)) - key_pts_[1] = ftr; - } - if(ftr->px[0] >= cu && ftr->px[1] < cv) - { - if(key_pts_[2] == NULL) - key_pts_[2] = ftr; - else if((ftr->px[0]-cu) * (ftr->px[1]-cv) - > (key_pts_[2]->px[0]-cu) * (key_pts_[2]->px[1]-cv)) - key_pts_[2] = ftr; - } - if(ftr->px[0] < cv && ftr->px[1] < cv) - { - if(key_pts_[3] == NULL) - key_pts_[3] = ftr; - else if((ftr->px[0]-cu) * (ftr->px[1]-cv) - > (key_pts_[3]->px[0]-cu) * (key_pts_[3]->px[1]-cv)) - key_pts_[3] = ftr; - } - if(ftr->px[0] < cv && ftr->px[1] >= cv) - { - if(key_pts_[4] == NULL) - key_pts_[4] = ftr; - else if((ftr->px[0]-cu) * (ftr->px[1]-cv) - > (key_pts_[4]->px[0]-cu) * (key_pts_[4]->px[1]-cv)) - key_pts_[4] = ftr; - } -} - -void Frame::removeKeyPoint(Feature* ftr) -{ - bool found = false; - std::for_each(key_pts_.begin(), key_pts_.end(), [&](Feature*& i){ - if(i == ftr) { - i = NULL; - found = true; - } - }); - if(found) - setKeyPoints(); -} - -bool Frame::isVisible(const Vector3d& xyz_w) const -{ - Vector3d xyz_f = T_f_w_*xyz_w; - if(xyz_f.z() < 0.0) - return false; // point is behind the camera - Vector2d px = f2c(xyz_f); - if(px[0] >= 0.0 && px[1] >= 0.0 && px[0] < cam_->width() && px[1] < cam_->height()) - return true; - return false; -} - - -/// Utility functions for the Frame class -namespace frame_utils { - -void createImgPyramid(const cv::Mat& img_level_0, int n_levels, ImgPyr& pyr) -{ - pyr.resize(n_levels); - pyr[0] = img_level_0; - for(int i=1; i depth_vec; - depth_vec.reserve(frame.fts_.size()); - depth_min = std::numeric_limits::max(); - for(auto it=frame.fts_.begin(), ite=frame.fts_.end(); it!=ite; ++it) - { - if((*it)->point != NULL) - { - const double z = frame.w2f((*it)->point->pos_).z(); - depth_vec.push_back(z); - depth_min = fmin(z, depth_min); - } - } - if(depth_vec.empty()) - { - SVO_WARN_STREAM("Cannot set scene depth. Frame has no point-observations!"); - return false; - } - depth_mean = vk::getMedian(depth_vec); - return true; -} - -} // namespace frame_utils -} // namespace svo diff --git a/CPU_version/svo/src/frame_handler_base.cpp b/CPU_version/svo/src/frame_handler_base.cpp deleted file mode 100644 index 175ee01..0000000 --- a/CPU_version/svo/src/frame_handler_base.cpp +++ /dev/null @@ -1,199 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace svo -{ - -// definition of global and static variables which were declared in the header -#ifdef SVO_TRACE -vk::PerformanceMonitor* g_permon = NULL; -#endif - -FrameHandlerBase::FrameHandlerBase() : - stage_(STAGE_PAUSED), - set_reset_(false), - set_start_(false), - acc_frame_timings_(10), - acc_num_obs_(10), - num_obs_last_(0), - tracking_quality_(TRACKING_INSUFFICIENT) -{ -#ifdef SVO_TRACE - // Initialize Performance Monitor - g_permon = new vk::PerformanceMonitor(); - g_permon->addTimer("pyramid_creation"); - g_permon->addTimer("sparse_img_align"); - g_permon->addTimer("reproject"); - g_permon->addTimer("reproject_kfs"); - g_permon->addTimer("reproject_candidates"); - g_permon->addTimer("feature_align"); - g_permon->addTimer("pose_optimizer"); - g_permon->addTimer("point_optimizer"); - g_permon->addTimer("local_ba"); - g_permon->addTimer("tot_time"); - g_permon->addLog("timestamp"); - g_permon->addLog("img_align_n_tracked"); - g_permon->addLog("repr_n_mps"); - g_permon->addLog("repr_n_new_references"); - g_permon->addLog("sfba_thresh"); - g_permon->addLog("sfba_error_init"); - g_permon->addLog("sfba_error_final"); - g_permon->addLog("sfba_n_edges_final"); - g_permon->addLog("loba_n_erredges_init"); - g_permon->addLog("loba_n_erredges_fin"); - g_permon->addLog("loba_err_init"); - g_permon->addLog("loba_err_fin"); - g_permon->addLog("n_candidates"); - g_permon->addLog("dropout"); - g_permon->init(Config::traceName(), Config::traceDir()); -#endif - - SVO_INFO_STREAM("SVO initialized"); -} - -FrameHandlerBase::~FrameHandlerBase() -{ - SVO_INFO_STREAM("SVO destructor invoked"); -#ifdef SVO_TRACE - delete g_permon; -#endif -} - -bool FrameHandlerBase::startFrameProcessingCommon(const double timestamp) -{ - if(set_start_) - { - resetAll(); - stage_ = STAGE_FIRST_FRAME; - } - - if(stage_ == STAGE_PAUSED) - return false; - - SVO_LOG(timestamp); - SVO_DEBUG_STREAM("New Frame"); - SVO_START_TIMER("tot_time"); - timer_.start(); - - // some cleanup from last iteration, can't do before because of visualization - map_.emptyTrash(); - return true; -} - -int FrameHandlerBase::finishFrameProcessingCommon( - const size_t update_id, - const UpdateResult dropout, - const size_t num_observations) -{ - SVO_DEBUG_STREAM("Frame: "<writeToFile(); - { - boost::unique_lock lock(map_.point_candidates_.mut_); - size_t n_candidates = map_.point_candidates_.candidates_.size(); - SVO_LOG(n_candidates); - } -#endif - - if(dropout == RESULT_FAILURE && - (stage_ == STAGE_DEFAULT_FRAME || stage_ == STAGE_RELOCALIZING )) - { - stage_ = STAGE_RELOCALIZING; - tracking_quality_ = TRACKING_INSUFFICIENT; - } - else if (dropout == RESULT_FAILURE) - resetAll(); - if(set_reset_) - resetAll(); - - return 0; -} - -void FrameHandlerBase::resetCommon() -{ - map_.reset(); - stage_ = STAGE_PAUSED; - set_reset_ = false; - set_start_ = false; - tracking_quality_ = TRACKING_INSUFFICIENT; - num_obs_last_ = 0; - SVO_INFO_STREAM("RESET"); -} - -void FrameHandlerBase::setTrackingQuality(const size_t num_observations) -{ - tracking_quality_ = TRACKING_GOOD; - if(num_observations < Config::qualityMinFts()) - { - SVO_WARN_STREAM_THROTTLE(0.5, "Tracking less than "<< Config::qualityMinFts() <<" features!"); - tracking_quality_ = TRACKING_INSUFFICIENT; - } - const int feature_drop = static_cast(std::min(num_obs_last_, Config::maxFts())) - num_observations; - if(feature_drop > Config::qualityMaxFtsDrop()) - { - SVO_WARN_STREAM("Lost "<< feature_drop <<" features!"); - tracking_quality_ = TRACKING_INSUFFICIENT; - } -} - -bool ptLastOptimComparator(Point* lhs, Point* rhs) -{ - return (lhs->last_structure_optim_ < rhs->last_structure_optim_); -} - -void FrameHandlerBase::optimizeStructure( - FramePtr frame, - size_t max_n_pts, - int max_iter) -{ - deque pts; - for(Features::iterator it=frame->fts_.begin(); it!=frame->fts_.end(); ++it) - { - if((*it)->point != NULL) - pts.push_back((*it)->point); - } - max_n_pts = min(max_n_pts, pts.size()); - nth_element(pts.begin(), pts.begin() + max_n_pts, pts.end(), ptLastOptimComparator); - for(deque::iterator it=pts.begin(); it!=pts.begin()+max_n_pts; ++it) - { - (*it)->optimize(max_iter); - (*it)->last_structure_optim_ = frame->id_; - } -} - - -} // namespace svo diff --git a/CPU_version/svo/src/frame_handler_mono.cpp b/CPU_version/svo/src/frame_handler_mono.cpp deleted file mode 100644 index 799cb8c..0000000 --- a/CPU_version/svo/src/frame_handler_mono.cpp +++ /dev/null @@ -1,307 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#ifdef USE_BUNDLE_ADJUSTMENT -#include -#endif - -namespace svo { - -FrameHandlerMono::FrameHandlerMono(vk::AbstractCamera* cam,Sophus::SE3& SE_init) : - FrameHandlerBase(), - cam_(cam), - reprojector_(cam_, map_), - depth_filter_(NULL) -{ - initialize(); - imu_integPtr_=std::make_unique(SE_init); -} - -void FrameHandlerMono::initialize() -{ - feature_detection::DetectorPtr feature_detector( - new feature_detection::FastDetector( - cam_->width(), cam_->height(), Config::gridSize(), Config::nPyrLevels())); - DepthFilter::callback_t depth_filter_cb = boost::bind( - &MapPointCandidates::newCandidatePoint, &map_.point_candidates_, _1, _2); - depth_filter_ = new DepthFilter(feature_detector, depth_filter_cb); - depth_filter_->startThread(); -} - -FrameHandlerMono::~FrameHandlerMono() -{ - delete depth_filter_; -} - -void FrameHandlerMono::addImage(const cv::Mat& img, const double timestamp) -{ - if(!startFrameProcessingCommon(timestamp)) - return; - - // some cleanup from last iteration, can't do before because of visualization - core_kfs_.clear(); - overlap_kfs_.clear(); - - // create new frame - new_frame_.reset(new Frame(cam_, img.clone(), timestamp)); - - // process frame - UpdateResult res = RESULT_FAILURE; - if(stage_ == STAGE_DEFAULT_FRAME) - res = processFrame(); - else if(stage_ == STAGE_SECOND_FRAME) - res = processSecondFrame(); - else if(stage_ == STAGE_FIRST_FRAME) - res = processFirstFrame(); - else if(stage_ == STAGE_RELOCALIZING) - res = relocalizeFrame(SE3(Matrix3d::Identity(), Vector3d::Zero()), - map_.getClosestKeyframe(last_frame_)); - - // set last frame - last_frame_ = new_frame_; - new_frame_.reset(); - // finish processing - finishFrameProcessingCommon(last_frame_->id_, res, last_frame_->nObs()); -} - -FrameHandlerMono::UpdateResult FrameHandlerMono::processFirstFrame() -{ - new_frame_->T_f_w_ = SE3(Matrix3d::Identity(), Vector3d::Zero()); - if(klt_homography_init_.addFirstFrame(new_frame_) == initialization::FAILURE) - return RESULT_NO_KEYFRAME; - new_frame_->setKeyframe(); - map_.addKeyframe(new_frame_); - stage_ = STAGE_SECOND_FRAME; - SVO_INFO_STREAM("Init: Selected first frame."); - return RESULT_IS_KEYFRAME; -} - -FrameHandlerBase::UpdateResult FrameHandlerMono::processSecondFrame() -{ - initialization::InitResult res = klt_homography_init_.addSecondFrame(new_frame_); - if(res == initialization::FAILURE) - return RESULT_FAILURE; - else if(res == initialization::NO_KEYFRAME) - return RESULT_NO_KEYFRAME; - - // two-frame bundle adjustment -#ifdef USE_BUNDLE_ADJUSTMENT - ba::twoViewBA(new_frame_.get(), map_.lastKeyframe().get(), Config::lobaThresh(), &map_); -#endif - - new_frame_->setKeyframe(); - double depth_mean, depth_min; - frame_utils::getSceneDepth(*new_frame_, depth_mean, depth_min); - depth_filter_->addKeyframe(new_frame_, depth_mean, 0.5*depth_min); - - // add frame to map - map_.addKeyframe(new_frame_); - stage_ = STAGE_DEFAULT_FRAME; - klt_homography_init_.reset(); - SVO_INFO_STREAM("Init: Selected second frame, triangulated initial map."); - return RESULT_IS_KEYFRAME; -} - -FrameHandlerBase::UpdateResult FrameHandlerMono::processFrame() -{ - // Set initial pose TODO use prior - new_frame_->T_f_w_ = last_frame_->T_f_w_; - - // sparse image align - SparseImgAlign img_align(Config::kltMaxLevel(), Config::kltMinLevel(), - 30, SparseImgAlign::GaussNewton, false, false); - img_align.run(last_frame_, new_frame_); - // map reprojection & feature alignment - reprojector_.reprojectMap(new_frame_, overlap_kfs_); - std::cerr<<"Reprojection Map:\t nPoints = "<T_f_w_ = last_frame_->T_f_w_; // reset to avoid crazy pose jumps - tracking_quality_ = TRACKING_INSUFFICIENT; - return RESULT_FAILURE; - } - - // pose optimization subject to change for adding IMU - size_t sfba_n_edges_final; - if(!imu_integPtr_->predict(new_frame_,sfba_n_edges_final,Config::poseOptimThresh())) - return RESULT_FAILURE; - - - std::cerr<<"Reprojected points after opmization: "<T_f_w_ = last_frame_->T_f_w_; // reset to avoid crazy pose jumps - return RESULT_FAILURE; - } - double depth_mean, depth_min; - frame_utils::getSceneDepth(*new_frame_, depth_mean, depth_min); - if(!needNewKf(depth_mean) || tracking_quality_ == TRACKING_BAD) - { - depth_filter_->addFrame(new_frame_); - return RESULT_NO_KEYFRAME; - } - new_frame_->setKeyframe(); - - // new keyframe selected - for(Features::iterator it=new_frame_->fts_.begin(); it!=new_frame_->fts_.end(); ++it) - if((*it)->point != NULL) - (*it)->point->addFrameRef(*it); - map_.point_candidates_.addCandidatePointToFrame(new_frame_); - - // optional bundle adjustment -#ifdef USE_BUNDLE_ADJUSTMENT - if(Config::lobaNumIter() > 0) - { - SVO_START_TIMER("local_ba"); - setCoreKfs(Config::coreNKfs()); - size_t loba_n_erredges_init, loba_n_erredges_fin; - double loba_err_init, loba_err_fin; - ba::localBA(new_frame_.get(), &core_kfs_, &map_, - loba_n_erredges_init, loba_n_erredges_fin, - loba_err_init, loba_err_fin); - SVO_STOP_TIMER("local_ba"); - SVO_LOG4(loba_n_erredges_init, loba_n_erredges_fin, loba_err_init, loba_err_fin); - SVO_DEBUG_STREAM("Local BA:\t RemovedEdges {"<addKeyframe(new_frame_, depth_mean, 0.5*depth_min); - - // if limited number of keyframes, remove the one furthest apart - if(Config::maxNKfs() > 2 && map_.size() >= Config::maxNKfs()) - { - FramePtr furthest_frame = map_.getFurthestKeyframe(new_frame_->pos()); - depth_filter_->removeKeyframe(furthest_frame); // TODO this interrupts the mapper thread, maybe we can solve this better - map_.safeDeleteFrame(furthest_frame); - } - - // add keyframe to map - map_.addKeyframe(new_frame_); - std::cerr<<"Svo pipline was finished\n"; - return RESULT_IS_KEYFRAME; -} - -FrameHandlerMono::UpdateResult FrameHandlerMono::relocalizeFrame( - const SE3& T_cur_ref, - FramePtr ref_keyframe) -{ - if(ref_keyframe == nullptr) - { - return RESULT_FAILURE; - } - SparseImgAlign img_align(Config::kltMaxLevel(), Config::kltMinLevel(), - 30, SparseImgAlign::GaussNewton, false, false); - size_t img_align_n_tracked = img_align.run(ref_keyframe, new_frame_); - usleep(2000); - if(img_align_n_tracked > Config::qualityMinFts()) - { - SE3 T_f_w_last = last_frame_->T_f_w_; - last_frame_ = ref_keyframe; - FrameHandlerMono::UpdateResult res = processFrame(); - if(res != RESULT_FAILURE) - { - stage_ = STAGE_DEFAULT_FRAME; - } - else - new_frame_->T_f_w_ = T_f_w_last; // reset to last well localized pose - return res; - } - return RESULT_FAILURE; -} - -bool FrameHandlerMono::relocalizeFrameAtPose( - const int keyframe_id, - const SE3& T_f_kf, - const cv::Mat& img, - const double timestamp) -{ - FramePtr ref_keyframe; - if(!map_.getKeyframeById(keyframe_id, ref_keyframe)) - return false; - new_frame_.reset(new Frame(cam_, img.clone(), timestamp)); - UpdateResult res = relocalizeFrame(T_f_kf, ref_keyframe); - if(res != RESULT_FAILURE) { - last_frame_ = new_frame_; - return true; - } - return false; -} - -void FrameHandlerMono::resetAll() -{ - resetCommon(); - last_frame_.reset(); - new_frame_.reset(); - core_kfs_.clear(); - overlap_kfs_.clear(); - depth_filter_->reset(); -} - -void FrameHandlerMono::setFirstFrame(const FramePtr& first_frame) -{ - resetAll(); - last_frame_ = first_frame; - last_frame_->setKeyframe(); - map_.addKeyframe(last_frame_); - stage_ = STAGE_DEFAULT_FRAME; -} - -bool FrameHandlerMono::needNewKf(double scene_depth_mean) -{ - for(auto it=overlap_kfs_.begin(), ite=overlap_kfs_.end(); it!=ite; ++it) - { - Vector3d relpos = new_frame_->w2f(it->first->pos()); - if(fabs(relpos.x())/scene_depth_mean < Config::kfSelectMinDist() && - fabs(relpos.y())/scene_depth_mean < Config::kfSelectMinDist()*0.8 && - fabs(relpos.z())/scene_depth_mean < Config::kfSelectMinDist()*1.3) - return false; - } - return true; -} - -void FrameHandlerMono::setCoreKfs(size_t n_closest) -{ - size_t n = min(n_closest, overlap_kfs_.size()-1); - std::partial_sort(overlap_kfs_.begin(), overlap_kfs_.begin()+n, overlap_kfs_.end(), - boost::bind(&pair::second, _1) > - boost::bind(&pair::second, _2)); - std::for_each(overlap_kfs_.begin(), overlap_kfs_.end(), [&](pair& i){ core_kfs_.insert(i.first); }); -} - -} // namespace svo diff --git a/CPU_version/svo/src/imu_integration.cpp b/CPU_version/svo/src/imu_integration.cpp deleted file mode 100644 index a66223c..0000000 --- a/CPU_version/svo/src/imu_integration.cpp +++ /dev/null @@ -1,153 +0,0 @@ -// -// Created by gfuse on 4/9/21. -// -//#define NDEBUG -#include "svo/imu_integration.h" -#include -#include -#include "svo/feature.h" -#include "svo/point.h" -#include "svo/svoVisionFactor.h" -#include -#include -#include -#include - -Imu_Integration::Imu_Integration(Sophus::SE3& SE_init){ - graphPtr=std::make_shared(); - valuesPtr=std::make_shared(); - gtsam::Vector4 g=SE_init.matrix()*gtsam::Vector4(0, 0, 9.8,1.0); - parameterPtr = boost::shared_ptr(new gtsam::PreintegrationCombinedParams(gtsam::Vector3(g.x(),g.y(),g.z()))); - parameterPtr->setBodyPSensor(gtsam::Pose3(SE_init.matrix()));// The pose of the sensor in the body frame - parameterPtr->accelerometerCovariance=gtsam::I_3x3 * svo::Config::ACC_Noise(); // acc white noise in continuous - parameterPtr->gyroscopeCovariance=gtsam::I_3x3 * svo::Config::GYO_Noise();// gyro white noise in continuous - parameterPtr->integrationCovariance=gtsam::I_3x3 * svo::Config::IUC(); // integration uncertainty continuous - parameterPtr->biasAccCovariance = gtsam::I_3x3 * svo::Config::ABC(); // acc bias in continuous - parameterPtr->biasOmegaCovariance = gtsam::I_3x3 * svo::Config::GBC(); // gyro bias in continuous - parameterPtr->biasAccOmegaInt = gtsam::I_6x6 * svo::Config::EBP(); // error in the bias used for preintegration - imu_biasPtr=std::make_shared(gtsam::Vector3(1e-8,1e-8,1e-8),gtsam::Vector3(1e-8,1e-8,1e-8)); - preintegratedPtr = std::make_shared(parameterPtr,*imu_biasPtr); - ProjectNoisePtr = gtsam::noiseModel::Isotropic::Sigma(2, svo::Config::NRP()); // the noise used for projection - optimizerParamPtr=std::make_shared(); - optimizerParamPtr->relinearizeThreshold = 0.1; - optimizerParamPtr->relinearizeSkip = 1; - //optimizerParamPtr->evaluateNonlinearError=true; - assert(preintegratedPtr); -} -Imu_Integration::~Imu_Integration(){ - -} -bool Imu_Integration::update(double* imu){ - if(syn)return false; - if(imu_factor_id<1)return false; - auto in=std::chrono::steady_clock::now(); - if(std::chrono::duration(in-t_1).count()>20.0){ - t_1=in; - preintegratedPtr->integrateMeasurement(Eigen::Vector3d(imu[0],imu[1],imu[2]),Eigen::Vector3d(imu[3],imu[4],imu[5]),0.005); - }else{ - preintegratedPtr->integrateMeasurement(Eigen::Vector3d(imu[0],imu[1],imu[2]),Eigen::Vector3d(imu[3],imu[4],imu[5]),std::chrono::duration(in-t_1).count()); - t_1=in; - ++imu_n; - } - return true; - -} -bool Imu_Integration::reset(gtsam::ISAM2& optimizer,boost::shared_ptr& new_frame){ - gtsam::Values result = optimizer.calculateEstimate(); - // Overwrite the beginning of the preintegration for the next step. - statePtr=std::make_shared(result.at(P(imu_factor_id)), result.at(V(imu_factor_id))); - imu_biasPtr=std::make_shared(result.at(B(imu_factor_id))); - preintegratedPtr->resetIntegrationAndSetBias(*imu_biasPtr); - ++imu_factor_id; - syn=false; - new_frame->T_f_w_=Sophus::SE3(statePtr->R(),statePtr->t()); - new_frame->Cov_=optimizer.marginalCovariance(P(imu_factor_id-1)); - graphPtr->resize(0); - valuesPtr->clear(); - valuesPtr->insert(P(imu_factor_id-1),statePtr->pose()); - valuesPtr->insert(V(imu_factor_id-1),statePtr->v()); - valuesPtr->insert(B(imu_factor_id-1),*imu_biasPtr); - graphPtr->addPrior(P(imu_factor_id-1),statePtr->pose(),optimizer.marginalCovariance(P(imu_factor_id-1))); - graphPtr->addPrior(V(imu_factor_id-1),statePtr->v(),optimizer.marginalCovariance(V(imu_factor_id-1))); - graphPtr->addPrior(B(imu_factor_id-1),*imu_biasPtr,optimizer.marginalCovariance(B(imu_factor_id-1))); - return true; -} -bool Imu_Integration::reset(gtsam::LevenbergMarquardtOptimizer& optimizer,boost::shared_ptr& new_frame){ - gtsam::Values result = optimizer.optimize(); - // Overwrite the beginning of the preintegration for the next step. - statePtr=std::make_shared(result.at(P(imu_factor_id)), result.at(V(imu_factor_id))); - imu_biasPtr=std::make_shared(result.at(B(imu_factor_id))); - preintegratedPtr->resetIntegrationAndSetBias(*imu_biasPtr); - ++imu_factor_id; - syn=false; - gtsam::Marginals marginals(*graphPtr,result); - new_frame->T_f_w_=Sophus::SE3(statePtr->R(),statePtr->t()); - new_frame->Cov_=marginals.marginalCovariance(P(imu_factor_id-1)); - graphPtr->resize(0); - valuesPtr->clear(); - valuesPtr->insert(P(imu_factor_id-1),statePtr->pose()); - valuesPtr->insert(V(imu_factor_id-1),statePtr->v()); - valuesPtr->insert(B(imu_factor_id-1),*imu_biasPtr); - graphPtr->addPrior(P(imu_factor_id-1),statePtr->pose(),marginals.marginalCovariance(P(imu_factor_id-1))); - graphPtr->addPrior(V(imu_factor_id-1),statePtr->v(),marginals.marginalCovariance(V(imu_factor_id-1))); - graphPtr->addPrior(B(imu_factor_id-1),*imu_biasPtr,marginals.marginalCovariance(B(imu_factor_id-1))); - return true; -} -bool Imu_Integration::predict(boost::shared_ptr& new_frame,std::size_t& num_obs,const double reproj_thresh){ - usleep(5000); - syn=true; - if(imu_factor_id<1){ - statePtr=std::make_shared(gtsam::Pose3(new_frame->T_f_w_.matrix()), - gtsam::Vector3(1e-12,1e-12,1e-12)); - valuesPtr->insert(P(0),statePtr->pose()); - valuesPtr->insert(V(0),statePtr->v()); - valuesPtr->insert(B(0),*imu_biasPtr); - graphPtr->addPrior(P(0),statePtr->pose(),gtsam::noiseModel::Diagonal::Sigmas((gtsam::Vector(6) << 1e-9, 1e-9, 1e-9, 1e-9, 1e-9, 1e-9).finished())); - graphPtr->addPrior(V(0),statePtr->v(),gtsam::noiseModel::Isotropic::Sigma(3, 1e-4)); - graphPtr->addPrior(B(0),*imu_biasPtr,gtsam::noiseModel::Isotropic::Sigma(6, 1e-2)); - }else{ - if(imu_n<1)return false; - auto preint_imu_combined =dynamic_cast(*preintegratedPtr); - valuesPtr->insert(P(imu_factor_id), gtsam::Pose3(new_frame->T_f_w_.matrix())); - valuesPtr->insert(V(imu_factor_id), statePtr->v()); - valuesPtr->insert(B(imu_factor_id), *imu_biasPtr); - gtsam::CombinedImuFactor imu_factor(P(imu_factor_id - 1), V(imu_factor_id - 1), P(imu_factor_id), V(imu_factor_id), B(imu_factor_id - 1), B(imu_factor_id), - preint_imu_combined); - graphPtr->emplace_shared(imu_factor); - imu_n=0; - } - - num_obs=0; - for(auto&& f:new_frame->fts_){ - if(f->point==NULL)continue; - graphPtr->emplace_shared(f->f, f->point->pos_,f->level, ProjectNoisePtr,P(imu_factor_id)); - ++num_obs; - } - // Now optimize. - //gtsam::ISAM2 optimizer(*optimizerParamPtr); - //optimizer.update(*graphPtr, *valuesPtr); - // Each call to iSAM2 update(*) performs one iteration of the iterative - // nonlinear solver. If accuracy is desired at the expense of time, - // update(*) can be called additional times to perform multiple optimizer - // iterations every step. - //optimizer.update(); - // optimizer.print(); - gtsam::LevenbergMarquardtOptimizer optimizer(*graphPtr, *valuesPtr); - - reset(optimizer,new_frame); - // Remove Measurements with too large reprojection error - double reproj_thresh_scaled = reproj_thresh / new_frame->cam_->errorMultiplier2(); - for(auto&& f:new_frame->fts_) - { - if(f->point == NULL) - continue; - Eigen::Vector2d e = (vk::project2d(f->f) - vk::project2d(new_frame->T_f_w_ * f->point->pos_))*1.0 / (1<level); - if(e.norm() > reproj_thresh_scaled) - { - // we don't need to delete a reference in the point since it was not created yet - f->point = NULL; - --num_obs; - } - } - return true; -} diff --git a/CPU_version/svo/src/initialization.cpp b/CPU_version/svo/src/initialization.cpp deleted file mode 100644 index 571a0bc..0000000 --- a/CPU_version/svo/src/initialization.cpp +++ /dev/null @@ -1,199 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include - -namespace svo { -namespace initialization { - -InitResult KltHomographyInit::addFirstFrame(FramePtr frame_ref) -{ - reset(); - detectFeatures(frame_ref, px_ref_, f_ref_); - if(px_ref_.size() < 100) - { - SVO_WARN_STREAM_THROTTLE(2.0, "First image has less than 100 features. Retry in more textured environment."); - return FAILURE; - } - frame_ref_ = frame_ref; - px_cur_.insert(px_cur_.begin(), px_ref_.begin(), px_ref_.end()); - return SUCCESS; -} - -InitResult KltHomographyInit::addSecondFrame(FramePtr frame_cur) -{ - trackKlt(frame_ref_, frame_cur, px_ref_, px_cur_, f_ref_, f_cur_, disparities_); - SVO_INFO_STREAM("Init: KLT tracked "<< disparities_.size() <<" features"); - - if(disparities_.size() < Config::initMinTracked()) - return FAILURE; - - double disparity = vk::getMedian(disparities_); - SVO_INFO_STREAM("Init: KLT "<cam_->errorMultiplier2(), Config::poseOptimThresh(), - inliers_, xyz_in_cur_, T_cur_from_ref_); - SVO_INFO_STREAM("Init: Homography RANSAC "< depth_vec; - for(size_t i=0; iT_f_w_ = T_cur_from_ref_ * frame_ref_->T_f_w_; - frame_cur->T_f_w_.translation() = - -frame_cur->T_f_w_.rotation_matrix()*(frame_ref_->pos() + scale*(frame_cur->pos() - frame_ref_->pos())); - - // For each inlier create 3D point and add feature in both frames - SE3 T_world_cur = frame_cur->T_f_w_.inverse(); - for(vector::iterator it=inliers_.begin(); it!=inliers_.end(); ++it) - { - Vector2d px_cur(px_cur_[*it].x, px_cur_[*it].y); - Vector2d px_ref(px_ref_[*it].x, px_ref_[*it].y); - if(frame_ref_->cam_->isInFrame(px_cur.cast(), 10) && frame_ref_->cam_->isInFrame(px_ref.cast(), 10) && xyz_in_cur_[*it].z() > 0) - { - Vector3d pos = T_world_cur * (xyz_in_cur_[*it]*scale); - Point* new_point = new Point(pos); - - Feature* ftr_cur(new Feature(frame_cur.get(), new_point, px_cur, f_cur_[*it], 0)); - frame_cur->addFeature(ftr_cur); - new_point->addFrameRef(ftr_cur); - - Feature* ftr_ref(new Feature(frame_ref_.get(), new_point, px_ref, f_ref_[*it], 0)); - frame_ref_->addFeature(ftr_ref); - new_point->addFrameRef(ftr_ref); - } - } - return SUCCESS; -} - -void KltHomographyInit::reset() -{ - px_cur_.clear(); - frame_ref_.reset(); -} - -void detectFeatures( - FramePtr frame, - vector& px_vec, - vector& f_vec) -{ - Features new_features; - feature_detection::FastDetector detector( - frame->img().cols, frame->img().rows, Config::gridSize(), Config::nPyrLevels()); - detector.detect(frame.get(), frame->img_pyr_, Config::triangMinCornerScore(), new_features); - - // now for all maximum corners, initialize a new seed - px_vec.clear(); px_vec.reserve(new_features.size()); - f_vec.clear(); f_vec.reserve(new_features.size()); - std::for_each(new_features.begin(), new_features.end(), [&](Feature* ftr){ - px_vec.push_back(cv::Point2f(ftr->px[0], ftr->px[1])); - f_vec.push_back(ftr->f); - delete ftr; - }); -} - -void trackKlt( - FramePtr frame_ref, - FramePtr frame_cur, - vector& px_ref, - vector& px_cur, - vector& f_ref, - vector& f_cur, - vector& disparities) -{ - const double klt_win_size = 30.0; - const int klt_max_iter = 30; - const double klt_eps = 0.001; - vector status; - vector error; - vector min_eig_vec; - cv::TermCriteria termcrit(cv::TermCriteria::COUNT+cv::TermCriteria::EPS, klt_max_iter, klt_eps); - cv::calcOpticalFlowPyrLK(frame_ref->img_pyr_[0], frame_cur->img_pyr_[0], - px_ref, px_cur, - status, error, - cv::Size2i(klt_win_size, klt_win_size), - 4, termcrit, cv::OPTFLOW_USE_INITIAL_FLOW); - - vector::iterator px_ref_it = px_ref.begin(); - vector::iterator px_cur_it = px_cur.begin(); - vector::iterator f_ref_it = f_ref.begin(); - f_cur.clear(); f_cur.reserve(px_cur.size()); - disparities.clear(); disparities.reserve(px_cur.size()); - for(size_t i=0; px_ref_it != px_ref.end(); ++i) - { - if(!status[i]) - { - px_ref_it = px_ref.erase(px_ref_it); - px_cur_it = px_cur.erase(px_cur_it); - f_ref_it = f_ref.erase(f_ref_it); - continue; - } - f_cur.push_back(frame_cur->c2f(px_cur_it->x, px_cur_it->y)); - disparities.push_back(Vector2d(px_ref_it->x - px_cur_it->x, px_ref_it->y - px_cur_it->y).norm()); - ++px_ref_it; - ++px_cur_it; - ++f_ref_it; - } -} - -void computeHomography( - const vector& f_ref, - const vector& f_cur, - double focal_length, - double reprojection_threshold, - vector& inliers, - vector& xyz_in_cur, - SE3& T_cur_from_ref) -{ - vector uv_ref(f_ref.size()); - vector uv_cur(f_cur.size()); - for(size_t i=0, i_max=f_ref.size(); i outliers; - vk::computeInliers(f_cur, f_ref, - Homography.T_c2_from_c1.rotation_matrix(), Homography.T_c2_from_c1.translation(), - reprojection_threshold, focal_length, - xyz_in_cur, inliers, outliers); - T_cur_from_ref = Homography.T_c2_from_c1; -} - - -} // namespace initialization -} // namespace svo diff --git a/CPU_version/svo/src/map.cpp b/CPU_version/svo/src/map.cpp deleted file mode 100644 index 2ecad1c..0000000 --- a/CPU_version/svo/src/map.cpp +++ /dev/null @@ -1,368 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include - -namespace svo { - -Map::Map() {} - -Map::~Map() -{ - reset(); - SVO_INFO_STREAM("Map destructed"); -} - -void Map::reset() -{ - keyframes_.clear(); - point_candidates_.reset(); - emptyTrash(); -} - -bool Map::safeDeleteFrame(FramePtr frame) -{ - bool found = false; - for(auto it=keyframes_.begin(), ite=keyframes_.end(); it!=ite; ++it) - { - if(*it == frame) - { - std::for_each((*it)->fts_.begin(), (*it)->fts_.end(), [&](Feature* ftr){ - removePtFrameRef(it->get(), ftr); - }); - keyframes_.erase(it); - found = true; - break; - } - } - - point_candidates_.removeFrameCandidates(frame); - - if(found) - return true; - - SVO_ERROR_STREAM("Tried to delete Keyframe in map which was not there."); - return false; -} - -void Map::removePtFrameRef(Frame* frame, Feature* ftr) -{ - if(ftr->point == NULL) - return; // mappoint may have been deleted in a previous ref. removal - Point* pt = ftr->point; - ftr->point = NULL; - if(pt->obs_.size() <= 2) - { - // If the references list of mappoint has only size=2, delete mappoint - safeDeletePoint(pt); - return; - } - pt->deleteFrameRef(frame); // Remove reference from map_point - frame->removeKeyPoint(ftr); // Check if mp was keyMp in keyframe -} - -void Map::safeDeletePoint(Point* pt) -{ - // Delete references to mappoints in all keyframes - std::for_each(pt->obs_.begin(), pt->obs_.end(), [&](Feature* ftr){ - ftr->point=NULL; - ftr->frame->removeKeyPoint(ftr); - }); - pt->obs_.clear(); - - // Delete mappoint - deletePoint(pt); -} - -void Map::deletePoint(Point* pt) -{ - pt->type_ = Point::TYPE_DELETED; - trash_points_.push_back(pt); -} - -void Map::addKeyframe(FramePtr new_keyframe) -{ - keyframes_.push_back(new_keyframe); -} - -void Map::getCloseKeyframes( - const FramePtr& frame, - std::list< std::pair >& close_kfs) const -{ - for(auto kf : keyframes_) - { - // check if kf has overlaping field of view with frame, use therefore KeyPoints - for(auto keypoint : kf->key_pts_) - { - if(keypoint == nullptr) - continue; - - if(frame->isVisible(keypoint->point->pos_)) - { - close_kfs.push_back( - std::make_pair( - kf, (frame->T_f_w_.translation()-kf->T_f_w_.translation()).norm())); - break; // this keyframe has an overlapping field of view -> add to close_kfs - } - } - } -} - -FramePtr Map::getClosestKeyframe(const FramePtr& frame) const -{ - list< pair > close_kfs; - getCloseKeyframes(frame, close_kfs); - if(close_kfs.empty()) - { - return nullptr; - } - - - // Sort KFs with overlap according to their closeness - close_kfs.sort(boost::bind(&std::pair::second, _1) < - boost::bind(&std::pair::second, _2)); - - if(close_kfs.front().first != frame) - return close_kfs.front().first; - close_kfs.pop_front(); - return close_kfs.front().first; -} - -FramePtr Map::getFurthestKeyframe(const Vector3d& pos) const -{ - FramePtr furthest_kf; - double maxdist = 0.0; - for(auto it=keyframes_.begin(), ite=keyframes_.end(); it!=ite; ++it) - { - double dist = ((*it)->pos()-pos).norm(); - if(dist > maxdist) { - maxdist = dist; - furthest_kf = *it; - } - } - return furthest_kf; -} - -bool Map::getKeyframeById(const int id, FramePtr& frame) const -{ - bool found = false; - for(auto it=keyframes_.begin(), ite=keyframes_.end(); it!=ite; ++it) - if((*it)->id_ == id) { - found = true; - frame = *it; - break; - } - return found; -} - -void Map::transform(const Matrix3d& R, const Vector3d& t, const double& s) -{ - for(auto it=keyframes_.begin(), ite=keyframes_.end(); it!=ite; ++it) - { - Vector3d pos = s*R*(*it)->pos() + t; - Matrix3d rot = R*(*it)->T_f_w_.rotation_matrix().inverse(); - (*it)->T_f_w_ = SE3(rot, pos).inverse(); - for(auto ftr=(*it)->fts_.begin(); ftr!=(*it)->fts_.end(); ++ftr) - { - if((*ftr)->point == NULL) - continue; - if((*ftr)->point->last_published_ts_ == -1000) - continue; - (*ftr)->point->last_published_ts_ = -1000; - (*ftr)->point->pos_ = s*R*(*ftr)->point->pos_ + t; - } - } -} - -void Map::emptyTrash() -{ - std::for_each(trash_points_.begin(), trash_points_.end(), [&](Point*& pt){ - delete pt; - pt=NULL; - }); - trash_points_.clear(); - point_candidates_.emptyTrash(); -} - -MapPointCandidates::MapPointCandidates() -{} - -MapPointCandidates::~MapPointCandidates() -{ - reset(); -} - -void MapPointCandidates::newCandidatePoint(Point* point, double depth_sigma2) -{ - point->type_ = Point::TYPE_CANDIDATE; - boost::unique_lock lock(mut_); - candidates_.push_back(PointCandidate(point, point->obs_.front())); -} - -void MapPointCandidates::addCandidatePointToFrame(FramePtr frame) -{ - boost::unique_lock lock(mut_); - PointCandidateList::iterator it=candidates_.begin(); - while(it != candidates_.end()) - { - if(it->first->obs_.front()->frame == frame.get()) - { - // insert feature in the frame - it->first->type_ = Point::TYPE_UNKNOWN; - it->first->n_failed_reproj_ = 0; - it->second->frame->addFeature(it->second); - it = candidates_.erase(it); - } - else - ++it; - } -} - -bool MapPointCandidates::deleteCandidatePoint(Point* point) -{ - boost::unique_lock lock(mut_); - for(auto it=candidates_.begin(), ite=candidates_.end(); it!=ite; ++it) - { - if(it->first == point) - { - deleteCandidate(*it); - candidates_.erase(it); - return true; - } - } - return false; -} - -void MapPointCandidates::removeFrameCandidates(FramePtr frame) -{ - boost::unique_lock lock(mut_); - auto it=candidates_.begin(); - while(it!=candidates_.end()) - { - if(it->second->frame == frame.get()) - { - deleteCandidate(*it); - it = candidates_.erase(it); - } - else - ++it; - } -} - -void MapPointCandidates::reset() -{ - boost::unique_lock lock(mut_); - std::for_each(candidates_.begin(), candidates_.end(), [&](PointCandidate& c){ - delete c.first; - delete c.second; - }); - candidates_.clear(); -} - -void MapPointCandidates::deleteCandidate(PointCandidate& c) -{ - // camera-rig: another frame might still be pointing to the candidate point - // therefore, we can't delete it right now. - delete c.second; c.second=NULL; - c.first->type_ = Point::TYPE_DELETED; - trash_points_.push_back(c.first); -} - -void MapPointCandidates::emptyTrash() -{ - std::for_each(trash_points_.begin(), trash_points_.end(), [&](Point*& p){ - delete p; p=NULL; - }); - trash_points_.clear(); -} - -namespace map_debug { - -void mapValidation(Map* map, int id) -{ - for(auto it=map->keyframes_.begin(); it!=map->keyframes_.end(); ++it) - frameValidation(it->get(), id); -} - -void frameValidation(Frame* frame, int id) -{ - for(auto it = frame->fts_.begin(); it!=frame->fts_.end(); ++it) - { - if((*it)->point==NULL) - continue; - - if((*it)->point->type_ == Point::TYPE_DELETED) - printf("ERROR DataValidation %i: Referenced point was deleted.\n", id); - - if(!(*it)->point->findFrameRef(frame)) - printf("ERROR DataValidation %i: Frame has reference but point does not have a reference back.\n", id); - - pointValidation((*it)->point, id); - } - for(auto it=frame->key_pts_.begin(); it!=frame->key_pts_.end(); ++it) - if(*it != NULL) - if((*it)->point == NULL) - printf("ERROR DataValidation %i: KeyPoints not correct!\n", id); -} - -void pointValidation(Point* point, int id) -{ - for(auto it=point->obs_.begin(); it!=point->obs_.end(); ++it) - { - bool found=false; - for(auto it_ftr=(*it)->frame->fts_.begin(); it_ftr!=(*it)->frame->fts_.end(); ++it_ftr) - if((*it_ftr)->point == point) { - found=true; break; - } - if(!found) - printf("ERROR DataValidation %i: Point %i has inconsistent reference in frame %i, is candidate = %i\n", id, point->id_, (*it)->frame->id_, (int) point->type_); - } -} - -void mapStatistics(Map* map) -{ - // compute average number of features which each frame observes - size_t n_pt_obs(0); - for(auto it=map->keyframes_.begin(); it!=map->keyframes_.end(); ++it) - n_pt_obs += (*it)->nObs(); - printf("\n\nMap Statistics: Frame avg. point obs = %f\n", (float) n_pt_obs/map->size()); - - // compute average number of observations that each point has - size_t n_frame_obs(0); - size_t n_pts(0); - std::set points; - for(auto it=map->keyframes_.begin(); it!=map->keyframes_.end(); ++it) - { - for(auto ftr=(*it)->fts_.begin(); ftr!=(*it)->fts_.end(); ++ftr) - { - if((*ftr)->point == NULL) - continue; - if(points.insert((*ftr)->point).second) { - ++n_pts; - n_frame_obs += (*ftr)->point->nRefs(); - } - } - } - printf("Map Statistics: Point avg. frame obs = %f\n\n", (float) n_frame_obs/n_pts); -} - -} // namespace map_debug -} // namespace svo diff --git a/CPU_version/svo/src/matcher.cpp b/CPU_version/svo/src/matcher.cpp deleted file mode 100644 index 38a89fb..0000000 --- a/CPU_version/svo/src/matcher.cpp +++ /dev/null @@ -1,323 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace svo { - -namespace warp { - -void getWarpMatrixAffine( - const vk::AbstractCamera& cam_ref, - const vk::AbstractCamera& cam_cur, - const Vector2d& px_ref, - const Vector3d& f_ref, - const double depth_ref, - const SE3& T_cur_ref, - const int level_ref, - Matrix2d& A_cur_ref) -{ - // Compute affine warp matrix A_ref_cur - const int halfpatch_size = 5; - const Vector3d xyz_ref(f_ref*depth_ref); - Vector3d xyz_du_ref(cam_ref.cam2world(px_ref + Vector2d(halfpatch_size,0)*(1< 3.0 && search_level < max_level) - { - search_level += 1; - D *= 0.25; - } - return search_level; -} - -void warpAffine( - const Matrix2d& A_cur_ref, - const cv::Mat& img_ref, - const Vector2d& px_ref, - const int level_ref, - const int search_level, - const int halfpatch_size, - uint8_t* patch) -{ - const int patch_size = halfpatch_size*2 ; - const Matrix2f A_ref_cur = A_cur_ref.inverse().cast(); - if(isnan(A_ref_cur(0,0))) - { - printf("Affine warp is NaN, probably camera has no translation\n"); // TODO - return; - } - - // Perform the warp on a larger patch. - uint8_t* patch_ptr = patch; - const Vector2f px_ref_pyr = px_ref.cast() / (1<=img_ref.cols-1 || px[1]>=img_ref.rows-1) - *patch_ptr = 0; - else - *patch_ptr = (uint8_t) vk::interpolateMat_8u(img_ref, px[0], px[1]); - } - } -} - -} // namespace warp - -bool depthFromTriangulation( - const SE3& T_search_ref, - const Vector3d& f_ref, - const Vector3d& f_cur, - double& depth) -{ - Matrix A; A << T_search_ref.rotation_matrix() * f_ref, f_cur; - const Matrix2d AtA = A.transpose()*A; - if(AtA.determinant() < 0.000001) - return false; - const Vector2d depth2 = - AtA.inverse()*A.transpose()*T_search_ref.translation(); - depth = fabs(depth2[0]); - return true; -} - -void Matcher::createPatchFromPatchWithBorder() -{ - uint8_t* ref_patch_ptr = patch_; - for(int y=1; yframe->cam_->isInFrame( - ref_ftr_->px.cast()/(1<level), halfpatch_size_+2, ref_ftr_->level)) - return false; - - // warp affine - warp::getWarpMatrixAffine( - *ref_ftr_->frame->cam_, *cur_frame.cam_, ref_ftr_->px, ref_ftr_->f, - (ref_ftr_->frame->pos() - pt.pos_).norm(), - cur_frame.T_f_w_ * ref_ftr_->frame->T_f_w_.inverse(), ref_ftr_->level, A_cur_ref_); - search_level_ = warp::getBestSearchLevel(A_cur_ref_, Config::nPyrLevels()-1); - warp::warpAffine(A_cur_ref_, ref_ftr_->frame->img_pyr_[ref_ftr_->level], ref_ftr_->px, - ref_ftr_->level, search_level_, halfpatch_size_+1, patch_with_border_); - createPatchFromPatchWithBorder(); - - // px_cur should be set - Vector2d px_scaled(px_cur/(1<type == Feature::EDGELET) - { - Vector2d dir_cur(A_cur_ref_*ref_ftr_->grad); - dir_cur.normalize(); - success = feature_alignment::align1D( - cur_frame.img_pyr_[search_level_], dir_cur.cast(), - patch_with_border_, patch_, options_.align_max_iter, px_scaled, h_inv_); - } - else - { - success = feature_alignment::align2D( - cur_frame.img_pyr_[search_level_], patch_with_border_, patch_, - options_.align_max_iter, px_scaled); - } - px_cur = px_scaled * (1<world2cam(A)); - Vector2d px_B(cur_frame.cam_->world2cam(B)); - epi_length_ = (px_A-px_B).norm() / (1<().normalized(), - patch_with_border_, patch_, options_.align_max_iter, px_scaled, h_inv_); - else - res = feature_alignment::align2D( - cur_frame.img_pyr_[search_level_], patch_with_border_, patch_, - options_.align_max_iter, px_scaled); - if(res) - { - px_cur_ = px_scaled*(1<cam2world(px_cur_), depth)) - return true; - } - return false; - } - - size_t n_steps = epi_length_/0.7; // one step per pixel - Vector2d step = epi_dir_/n_steps; - - if(n_steps > options_.max_epi_search_steps) - { - printf("WARNING: skip epipolar search: %zu evaluations, px_lenght=%f, d_min=%f, d_max=%f.\n", - n_steps, epi_length_, d_min, d_max); - return false; - } - - // for matching, precompute sum and sum2 of warped reference patch - int pixel_sum = 0; - int pixel_sum_square = 0; - PatchScore patch_score(patch_); - - // now we sample along the epipolar line - Vector2d uv = B-step; - Vector2i last_checked_pxi(0,0); - ++n_steps; - for(size_t i=0; iworld2cam(uv)); - Vector2i pxi(px[0]/(1<isInFrame(pxi, patch_size_, search_level_)) - continue; - - // TODO interpolation would probably be a good idea - uint8_t* cur_patch_ptr = cur_frame.img_pyr_[search_level_].data - + (pxi[1]-halfpatch_size_)*cur_frame.img_pyr_[search_level_].cols - + (pxi[0]-halfpatch_size_); - int zmssd = patch_score.computeScore(cur_patch_ptr, cur_frame.img_pyr_[search_level_].cols); - - if(zmssd < zmssd_best) { - zmssd_best = zmssd; - uv_best = uv; - } - } - - if(zmssd_best < PatchScore::threshold()) - { - if(options_.subpix_refinement) - { - px_cur_ = cur_frame.cam_->world2cam(uv_best); - Vector2d px_scaled(px_cur_/(1<().normalized(), - patch_with_border_, patch_, options_.align_max_iter, px_scaled, h_inv_); - else - res = feature_alignment::align2D( - cur_frame.img_pyr_[search_level_], patch_with_border_, patch_, - options_.align_max_iter, px_scaled); - if(res) - { - px_cur_ = px_scaled*(1<cam2world(px_cur_), depth)) - return true; - } - return false; - } - px_cur_ = cur_frame.cam_->world2cam(uv_best); - if(depthFromTriangulation(T_cur_ref, ref_ftr.f, vk::unproject2d(uv_best).normalized(), depth)) - return true; - } - return false; -} - -} // namespace svo diff --git a/CPU_version/svo/src/point.cpp b/CPU_version/svo/src/point.cpp deleted file mode 100644 index 2e45e06..0000000 --- a/CPU_version/svo/src/point.cpp +++ /dev/null @@ -1,179 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include - -namespace svo { - -int Point::point_counter_ = 0; - -Point::Point(const Vector3d& pos) : - id_(point_counter_++), - pos_(pos), - normal_set_(false), - n_obs_(0), - v_pt_(NULL), - last_published_ts_(0), - last_projected_kf_id_(-1), - type_(TYPE_UNKNOWN), - n_failed_reproj_(0), - n_succeeded_reproj_(0), - last_structure_optim_(0) -{} - -Point::Point(const Vector3d& pos, Feature* ftr) : - id_(point_counter_++), - pos_(pos), - normal_set_(false), - n_obs_(1), - v_pt_(NULL), - last_published_ts_(0), - last_projected_kf_id_(-1), - type_(TYPE_UNKNOWN), - n_failed_reproj_(0), - n_succeeded_reproj_(0), - last_structure_optim_(0) -{ - obs_.push_front(ftr); -} - -Point::~Point() -{} - -void Point::addFrameRef(Feature* ftr) -{ - obs_.push_front(ftr); - ++n_obs_; -} - -Feature* Point::findFrameRef(Frame* frame) -{ - for(auto it=obs_.begin(), ite=obs_.end(); it!=ite; ++it) - if((*it)->frame == frame) - return *it; - return NULL; // no keyframe found -} - -bool Point::deleteFrameRef(Frame* frame) -{ - for(auto it=obs_.begin(), ite=obs_.end(); it!=ite; ++it) - { - if((*it)->frame == frame) - { - obs_.erase(it); - return true; - } - } - return false; -} - -void Point::initNormal() -{ - assert(!obs_.empty()); - const Feature* ftr = obs_.back(); - assert(ftr->frame != NULL); - normal_ = ftr->frame->T_f_w_.rotation_matrix().transpose()*(-ftr->f); - normal_information_ = DiagonalMatrix(pow(20/(pos_-ftr->frame->pos()).norm(),2), 1.0, 1.0); - normal_set_ = true; -} - -bool Point::getCloseViewObs(const Vector3d& framepos, Feature*& ftr) const -{ - // TODO: get frame with same point of view AND same pyramid level! - Vector3d obs_dir(framepos - pos_); obs_dir.normalize(); - auto min_it=obs_.begin(); - double min_cos_angle = 0; - for(auto it=obs_.begin(), ite=obs_.end(); it!=ite; ++it) - { - Vector3d dir((*it)->frame->pos() - pos_); dir.normalize(); - double cos_angle = obs_dir.dot(dir); - if(cos_angle > min_cos_angle) - { - min_cos_angle = cos_angle; - min_it = it; - } - } - ftr = *min_it; - if(min_cos_angle < 0.5) // assume that observations larger than 60° are useless - return false; - return true; -} - -void Point::optimize(const size_t n_iter) -{ - Vector3d old_point = pos_; - double chi2 = 0.0; - Matrix3d A; - Vector3d b; - - for(size_t i=0; iframe->T_f_w_ * pos_); - Point::jacobian_xyz2uv(p_in_f, (*it)->frame->T_f_w_.rotation_matrix(), J); - const Vector2d e(vk::project2d((*it)->f) - vk::project2d(p_in_f)); - new_chi2 += e.squaredNorm(); - A.noalias() += J.transpose() * J; - b.noalias() -= J.transpose() * e; - } - - // solve linear system - const Vector3d dp(A.ldlt().solve(b)); - - // check if error increased - if((i > 0 && new_chi2 > chi2) || (bool) std::isnan((double)dp[0])) - { -#ifdef POINT_OPTIMIZER_DEBUG - cout << "it " << i - << "\t FAILURE \t new_chi2 = " << new_chi2 << endl; -#endif - pos_ = old_point; // roll-back - break; - } - - // update the model - Vector3d new_point = pos_ + dp; - old_point = pos_; - pos_ = new_point; - chi2 = new_chi2; -#ifdef POINT_OPTIMIZER_DEBUG - cout << "it " << i - << "\t Success \t new_chi2 = " << new_chi2 - << "\t norm(b) = " << vk::norm_max(b) - << endl; -#endif - - // stop when converged - if(vk::norm_max(dp) <= EPS) - break; - } -#ifdef POINT_OPTIMIZER_DEBUG - cout << endl; -#endif -} - -} // namespace svo diff --git a/CPU_version/svo/src/pose_optimizer.cpp b/CPU_version/svo/src/pose_optimizer.cpp deleted file mode 100644 index 1c491b0..0000000 --- a/CPU_version/svo/src/pose_optimizer.cpp +++ /dev/null @@ -1,165 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include - -namespace svo { -namespace pose_optimizer { - -void optimizeGaussNewton( - const double reproj_thresh, - const size_t n_iter, - const bool verbose, - FramePtr& frame, - double& estimated_scale, - double& error_init, - double& error_final, - size_t& num_obs) -{ - // init - double chi2(0.0); - vector chi2_vec_init, chi2_vec_final; - vk::robust_cost::TukeyWeightFunction weight_function; - SE3 T_old(frame->T_f_w_); - Matrix6d A; - Vector6d b; - - // compute the scale of the error for robust estimation - std::vector errors; errors.reserve(frame->fts_.size()); - for(auto it=frame->fts_.begin(); it!=frame->fts_.end(); ++it) - { - if((*it)->point == NULL) - continue; - //Reprojection error - Vector2d e = vk::project2d((*it)->f) - - vk::project2d(frame->T_f_w_ * (*it)->point->pos_); - e *= 1.0 / (1<<(*it)->level); - errors.push_back(e.norm()); - } - if(errors.empty()) - return; - vk::robust_cost::MADScaleEstimator scale_estimator; - estimated_scale = scale_estimator.compute(errors); - - num_obs = errors.size(); - chi2_vec_init.reserve(num_obs); - chi2_vec_final.reserve(num_obs); - double scale = estimated_scale; - for(size_t iter=0; itercam_->errorMultiplier2(); - - b.setZero(); - A.setZero(); - double new_chi2(0.0); - - // compute residual - for(auto it=frame->fts_.begin(); it!=frame->fts_.end(); ++it) - { - if((*it)->point == NULL) - continue; - Matrix26d J; - Vector3d xyz_f(frame->T_f_w_ * (*it)->point->pos_); - Frame::jacobian_xyz2uv(xyz_f, J); - Vector2d e = vk::project2d((*it)->f) - vk::project2d(xyz_f); - double sqrt_inv_cov = 1.0 / (1<<(*it)->level); - e *= sqrt_inv_cov; - if(iter == 0) - chi2_vec_init.push_back(e.squaredNorm()); // just for debug - J *= sqrt_inv_cov; - double weight = weight_function.value(e.norm()/scale); - A.noalias() += J.transpose()*J*weight; - b.noalias() -= J.transpose()*e*weight; - new_chi2 += e.squaredNorm()*weight; - } - - // solve linear system - const Vector6d dT(A.ldlt().solve(b)); - - // check if error increased - if((iter > 0 && new_chi2 > chi2) || (bool) std::isnan((double)dT[0])) - { - if(verbose) - std::cout << "it " << iter - << "\t FAILURE \t new_chi2 = " << new_chi2 << std::endl; - frame->T_f_w_ = T_old; // roll-back - break; - } - - // update the model - SE3 T_new = SE3::exp(dT)*frame->T_f_w_; - T_old = frame->T_f_w_; - frame->T_f_w_ = T_new; - chi2 = new_chi2; - if(verbose) - std::cout << "it " << iter - << "\t Success \t new_chi2 = " << new_chi2 - << "\t norm(dT) = " << vk::norm_max(dT) << std::endl; - - // stop when converged - if(vk::norm_max(dT) <= EPS) - break; - } - - // Set covariance as inverse information matrix. Optimistic estimator! - const double pixel_variance=1.0; - frame->Cov_ = pixel_variance*(A*std::pow(frame->cam_->errorMultiplier2(),2)).inverse(); - - // Remove Measurements with too large reprojection error - double reproj_thresh_scaled = reproj_thresh / frame->cam_->errorMultiplier2(); - size_t n_deleted_refs = 0; - for(Features::iterator it=frame->fts_.begin(); it!=frame->fts_.end(); ++it) - { - if((*it)->point == NULL) - continue; - Vector2d e = vk::project2d((*it)->f) - vk::project2d(frame->T_f_w_ * (*it)->point->pos_); - double sqrt_inv_cov = 1.0 / (1<<(*it)->level); - e *= sqrt_inv_cov; - chi2_vec_final.push_back(e.squaredNorm()); - if(e.norm() > reproj_thresh_scaled) - { - // we don't need to delete a reference in the point since it was not created yet - (*it)->point = NULL; - ++n_deleted_refs; - } - } - - error_init=0.0; - error_final=0.0; - if(!chi2_vec_init.empty()) - error_init = sqrt(vk::getMedian(chi2_vec_init))*frame->cam_->errorMultiplier2(); - if(!chi2_vec_final.empty()) - error_final = sqrt(vk::getMedian(chi2_vec_final))*frame->cam_->errorMultiplier2(); - - estimated_scale *= frame->cam_->errorMultiplier2(); - if(verbose) - std::cout << "n deleted obs = " << n_deleted_refs - << "\t scale = " << estimated_scale - << "\t error init = " << error_init - << "\t error end = " << error_final << std::endl; - num_obs -= n_deleted_refs; -} - -} // namespace pose_optimizer -} // namespace svo diff --git a/CPU_version/svo/src/reprojector.cpp b/CPU_version/svo/src/reprojector.cpp deleted file mode 100644 index 81a7835..0000000 --- a/CPU_version/svo/src/reprojector.cpp +++ /dev/null @@ -1,219 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace svo { - -Reprojector::Reprojector(vk::AbstractCamera* cam, Map& map) : - map_(map) -{ - initializeGrid(cam); -} - -Reprojector::~Reprojector() -{ - std::for_each(grid_.cells.begin(), grid_.cells.end(), [&](Cell* c){ delete c; }); -} - -void Reprojector::initializeGrid(vk::AbstractCamera* cam) -{ - grid_.cell_size = Config::gridSize(); - grid_.grid_n_cols = ceil(static_cast(cam->width())/grid_.cell_size); - grid_.grid_n_rows = ceil(static_cast(cam->height())/grid_.cell_size); - grid_.cells.resize(grid_.grid_n_cols*grid_.grid_n_rows); - std::for_each(grid_.cells.begin(), grid_.cells.end(), [&](Cell*& c){ c = new Cell; }); - grid_.cell_order.resize(grid_.cells.size()); - for(size_t i=0; iclear(); }); -} - -void Reprojector::reprojectMap( - FramePtr frame, - std::vector< std::pair >& overlap_kfs) -{ - resetGrid(); - - // Identify those Keyframes which share a common field of view. - SVO_START_TIMER("reproject_kfs"); - list< pair > close_kfs; - map_.getCloseKeyframes(frame, close_kfs); - - // Sort KFs with overlap according to their closeness - close_kfs.sort(boost::bind(&std::pair::second, _1) < - boost::bind(&std::pair::second, _2)); - - // Reproject all mappoints of the closest N kfs with overlap. We only store - // in which grid cell the points fall. - size_t n = 0; - overlap_kfs.reserve(options_.max_n_kfs); - for(auto it_frame=close_kfs.begin(), ite_frame=close_kfs.end(); - it_frame!=ite_frame && nfirst; - overlap_kfs.push_back(pair(ref_frame,0)); - - // Try to reproject each mappoint that the other KF observes - for(auto it_ftr=ref_frame->fts_.begin(), ite_ftr=ref_frame->fts_.end(); - it_ftr!=ite_ftr; ++it_ftr) - { - // check if the feature has a mappoint assigned - if((*it_ftr)->point == NULL) - continue; - - // make sure we project a point only once - if((*it_ftr)->point->last_projected_kf_id_ == frame->id_) - continue; - (*it_ftr)->point->last_projected_kf_id_ = frame->id_; - if(reprojectPoint(frame, (*it_ftr)->point)) - overlap_kfs.back().second++; - } - } - SVO_STOP_TIMER("reproject_kfs"); - - // Now project all point candidates - SVO_START_TIMER("reproject_candidates"); - { - boost::unique_lock lock(map_.point_candidates_.mut_); - auto it=map_.point_candidates_.candidates_.begin(); - while(it!=map_.point_candidates_.candidates_.end()) - { - if(!reprojectPoint(frame, it->first)) - { - it->first->n_failed_reproj_ += 3; - if(it->first->n_failed_reproj_ > 30) - { - map_.point_candidates_.deleteCandidate(*it); - it = map_.point_candidates_.candidates_.erase(it); - continue; - } - } - ++it; - } - } // unlock the mutex when out of scope - SVO_STOP_TIMER("reproject_candidates"); - - // Now we go through each grid cell and select one point to match. - // At the end, we should have at maximum one reprojected point per cell. - SVO_START_TIMER("feature_align"); - for(size_t i=0; i (size_t) Config::maxFts()) - break; - } - SVO_STOP_TIMER("feature_align"); -} - -bool Reprojector::pointQualityComparator(Candidate& lhs, Candidate& rhs) -{ - if(lhs.pt->type_ > rhs.pt->type_) - return true; - return false; -} - -bool Reprojector::reprojectCell(Cell& cell, FramePtr frame) -{ - cell.sort(boost::bind(&Reprojector::pointQualityComparator, _1, _2)); - Cell::iterator it=cell.begin(); - while(it!=cell.end()) - { - ++n_trials_; - - if(it->pt->type_ == Point::TYPE_DELETED) - { - it = cell.erase(it); - continue; - } - - bool found_match = true; - if(options_.find_match_direct) - found_match = matcher_.findMatchDirect(*it->pt, *frame, it->px); - if(!found_match) - { - it->pt->n_failed_reproj_++; - if(it->pt->type_ == Point::TYPE_UNKNOWN && it->pt->n_failed_reproj_ > 15) - map_.safeDeletePoint(it->pt); - if(it->pt->type_ == Point::TYPE_CANDIDATE && it->pt->n_failed_reproj_ > 30) - map_.point_candidates_.deleteCandidatePoint(it->pt); - it = cell.erase(it); - continue; - } - it->pt->n_succeeded_reproj_++; - if(it->pt->type_ == Point::TYPE_UNKNOWN && it->pt->n_succeeded_reproj_ > 10) - it->pt->type_ = Point::TYPE_GOOD; - - Feature* new_feature = new Feature(frame.get(), it->px, matcher_.search_level_); - frame->addFeature(new_feature); - - // Here we add a reference in the feature to the 3D point, the other way - // round is only done if this frame is selected as keyframe. - new_feature->point = it->pt; - - if(matcher_.ref_ftr_->type == Feature::EDGELET) - { - new_feature->type = Feature::EDGELET; - new_feature->grad = matcher_.A_cur_ref_*matcher_.ref_ftr_->grad; - new_feature->grad.normalize(); - } - - // If the keyframe is selected and we reproject the rest, we don't have to - // check this point anymore. - it = cell.erase(it); - - // Maximum one point per cell. - return true; - } - return false; -} - -bool Reprojector::reprojectPoint(FramePtr frame, Point* point) -{ - Vector2d px(frame->w2c(point->pos_)); - if(frame->cam_->isInFrame(px.cast(), 8)) // 8px is the patch size in the matcher - { - const int k = static_cast(px[1]/grid_.cell_size)*grid_.grid_n_cols - + static_cast(px[0]/grid_.cell_size); - grid_.cells.at(k)->push_back(Candidate(point, px)); - return true; - } - return false; -} - -} // namespace svo diff --git a/CPU_version/svo/src/sparse_img_align.cpp b/CPU_version/svo/src/sparse_img_align.cpp deleted file mode 100644 index ce1570b..0000000 --- a/CPU_version/svo/src/sparse_img_align.cpp +++ /dev/null @@ -1,274 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace svo { - -SparseImgAlign::SparseImgAlign( - int max_level, int min_level, int n_iter, - Method method, bool display, bool verbose) : - display_(display), - max_level_(max_level), - min_level_(min_level) -{ - n_iter_ = n_iter; - n_iter_init_ = n_iter_; - method_ = method; - verbose_ = verbose; - eps_ = 0.000001; -} - -size_t SparseImgAlign::run(FramePtr ref_frame, FramePtr cur_frame) -{ - reset(); - - if(ref_frame->fts_.empty()) - { - SVO_WARN_STREAM("SparseImgAlign: no features to track!"); - return 0; - } - - ref_frame_ = ref_frame; - cur_frame_ = cur_frame; - ref_patch_cache_ = cv::Mat(ref_frame_->fts_.size(), patch_area_, CV_32F); - jacobian_cache_.resize(Eigen::NoChange, ref_patch_cache_.rows*patch_area_); - visible_fts_.resize(ref_patch_cache_.rows, false); // TODO: should it be reset at each level? - - SE3 T_cur_from_ref(cur_frame_->T_f_w_ * ref_frame_->T_f_w_.inverse()); - - for(level_=max_level_; level_>=min_level_; --level_) - { - mu_ = 0.1; - jacobian_cache_.setZero(); - have_ref_patch_cache_ = false; - if(verbose_) - printf("\nPYRAMID LEVEL %i\n---------------\n", level_); - optimize(T_cur_from_ref); - } - cur_frame_->T_f_w_ = T_cur_from_ref * ref_frame_->T_f_w_; - - - - return n_meas_/patch_area_; -} - -Matrix SparseImgAlign::getFisherInformation() -{ - double sigma_i_sq = 5e-4*255*255; // image noise - Matrix I = H_/sigma_i_sq; - return I; -} - -void SparseImgAlign::precomputeReferencePatches() -{ - const int border = patch_halfsize_+1; - const cv::Mat& ref_img = ref_frame_->img_pyr_.at(level_); - const int stride = ref_img.cols; - const float scale = 1.0f/(1<pos(); - const double focal_length = ref_frame_->cam_->errorMultiplier2(); - size_t feature_counter = 0; - std::vector::iterator visiblity_it = visible_fts_.begin(); - for(auto it=ref_frame_->fts_.begin(), ite=ref_frame_->fts_.end(); - it!=ite; ++it, ++feature_counter, ++visiblity_it) - { - // check if reference with patch size is within image - const float u_ref = (*it)->px[0]*scale; - const float v_ref = (*it)->px[1]*scale; - const int u_ref_i = floorf(u_ref); - const int v_ref_i = floorf(v_ref); - if((*it)->point == NULL || u_ref_i-border < 0 || v_ref_i-border < 0 || u_ref_i+border >= ref_img.cols || v_ref_i+border >= ref_img.rows) - continue; - *visiblity_it = true; - - // cannot just take the 3d points coordinate because of the reprojection errors in the reference image!!! - const double depth(((*it)->point->pos_ - ref_pos).norm()); - const Vector3d xyz_ref((*it)->f*depth); - - // evaluate projection jacobian - Matrix frame_jac; - Frame::jacobian_xyz2uv(xyz_ref, frame_jac); - - // compute bilateral interpolation weights for reference image - const float subpix_u_ref = u_ref-u_ref_i; - const float subpix_v_ref = v_ref-v_ref_i; - const float w_ref_tl = (1.0-subpix_u_ref) * (1.0-subpix_v_ref); - const float w_ref_tr = subpix_u_ref * (1.0-subpix_v_ref); - const float w_ref_bl = (1.0-subpix_u_ref) * subpix_v_ref; - const float w_ref_br = subpix_u_ref * subpix_v_ref; - size_t pixel_counter = 0; - float* cache_ptr = reinterpret_cast(ref_patch_cache_.data) + patch_area_*feature_counter; - for(int y=0; yimg_pyr_.at(level_); - - if(linearize_system && display_) - resimg_ = cv::Mat(cur_img.size(), CV_32F, cv::Scalar(0)); - - if(have_ref_patch_cache_ == false) - precomputeReferencePatches(); - - // compute the weights on the first iteration - std::vector errors; - if(compute_weight_scale) - errors.reserve(visible_fts_.size()); - const int stride = cur_img.cols; - const int border = patch_halfsize_+1; - const float scale = 1.0f/(1<pos()); - float chi2 = 0.0; - size_t feature_counter = 0; // is used to compute the index of the cached jacobian - std::vector::iterator visiblity_it = visible_fts_.begin(); - for(auto it=ref_frame_->fts_.begin(); it!=ref_frame_->fts_.end(); - ++it, ++feature_counter, ++visiblity_it) - { - // check if feature is within image - if(!*visiblity_it) - continue; - - // compute pixel location in cur img - const double depth = ((*it)->point->pos_ - ref_pos).norm(); - const Vector3d xyz_ref((*it)->f*depth); - const Vector3d xyz_cur(T_cur_from_ref * xyz_ref); - const Vector2f uv_cur_pyr(cur_frame_->cam_->world2cam(xyz_cur).cast() * scale); - const float u_cur = uv_cur_pyr[0]; - const float v_cur = uv_cur_pyr[1]; - const int u_cur_i = floorf(u_cur); - const int v_cur_i = floorf(v_cur); - - // check if projection is within the image - if(u_cur_i < 0 || v_cur_i < 0 || u_cur_i-border < 0 || v_cur_i-border < 0 || u_cur_i+border >= cur_img.cols || v_cur_i+border >= cur_img.rows) - continue; - - // compute bilateral interpolation weights for the current image - const float subpix_u_cur = u_cur-u_cur_i; - const float subpix_v_cur = v_cur-v_cur_i; - const float w_cur_tl = (1.0-subpix_u_cur) * (1.0-subpix_v_cur); - const float w_cur_tr = subpix_u_cur * (1.0-subpix_v_cur); - const float w_cur_bl = (1.0-subpix_u_cur) * subpix_v_cur; - const float w_cur_br = subpix_u_cur * subpix_v_cur; - float* ref_patch_cache_ptr = reinterpret_cast(ref_patch_cache_.data) + patch_area_*feature_counter; - size_t pixel_counter = 0; // is used to compute the index of the cached jacobian - for(int y=0; yvalue(res/scale_); - } - - chi2 += res*res*weight; - n_meas_++; - - if(linearize_system) - { - // compute Jacobian, weighted Hessian and weighted "steepest descend images" (times error) - const Vector6d J(jacobian_cache_.col(feature_counter*patch_area_ + pixel_counter)); - H_.noalias() += J*J.transpose()*weight; - Jres_.noalias() -= J*res*weight; - if(display_) - resimg_.at((int) v_cur+y-patch_halfsize_, (int) u_cur+x-patch_halfsize_) = res/255.0; - } - } - } - } - - // compute the weights on the first iteration - if(compute_weight_scale && iter_ == 0) - scale_ = scale_estimator_->compute(errors); - - return chi2/n_meas_; -} - -int SparseImgAlign::solve() -{ - x_ = H_.ldlt().solve(Jres_); - if((bool) std::isnan((double) x_[0])) - return 0; - return 1; -} - -void SparseImgAlign::update( - const ModelType& T_curold_from_ref, - ModelType& T_curnew_from_ref) -{ - T_curnew_from_ref = T_curold_from_ref * SE3::exp(-x_); -} - -void SparseImgAlign::startIteration() -{} - -void SparseImgAlign::finishIteration() -{ - if(display_) - { - cv::namedWindow("residuals", CV_WINDOW_AUTOSIZE); - cv::imshow("residuals", resimg_*10); - cv::waitKey(0); - } -} - -} // namespace svo - diff --git a/CPU_version/svo/test/README.md b/CPU_version/svo/test/README.md deleted file mode 100644 index c70f832..0000000 --- a/CPU_version/svo/test/README.md +++ /dev/null @@ -1,24 +0,0 @@ -#### Download Test Data - -Create a folder where you will store all datasets, e.g.: - - mkdir Datasets - -In your `.bashrc` script, create a new environment variable pointing to the dataset folder: - - export SVO_DATASET_DIR=${HOME}/Datasets - -Source your new `.bashrc` script, go to the new dataset folder and download the test data: - - source ~/.bashrc - cd ${SVO_DATASET_DIR} - wget http://rpg.ifi.uzh.ch/datasets/sin2_tex2_h1_v8_d.tar.gz -O - | tar -xz - -You can then run the tests, e.g.: - - rosrun svo test_pipeline - -or if you are not using ROS: - - cd svo/bin - ./test_pipeline diff --git a/CPU_version/svo/test/benchmark.csv b/CPU_version/svo/test/benchmark.csv deleted file mode 100644 index a3831e4..0000000 --- a/CPU_version/svo/test/benchmark.csv +++ /dev/null @@ -1,307 +0,0 @@ -local_ba,point_optimizer,pose_optimizer,pyramid_creation,reproject,sparse_img_align,tot_time,dropout,img_align_n_tracked,loba_err_fin,loba_err_init,loba_n_erredges_fin,loba_n_erredges_init,n_candidates,repr_n_mps,repr_n_new_references,sfba_error_final,sfba_error_init,sfba_n_edges_final,sfba_thresh -0.000000000000000,0.000000000000000,0.000000000000000,0.000231000000000,0.000000000000000,0.000000000000000,0.005536000000000,1.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000,0.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000326000000000,0.000000000000000,0.000000000000000,0.016564000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000189000000000,0.000000000000000,0.000000000000000,0.016754000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000133000000000,0.000000000000000,0.000000000000000,0.017082000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000136000000000,0.000000000000000,0.000000000000000,0.023259000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000120000000000,0.000000000000000,0.000000000000000,0.029114000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000231000000000,0.000000000000000,0.000000000000000,0.032538000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000123000000000,0.000000000000000,0.000000000000000,0.031375000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000137000000000,0.000000000000000,0.000000000000000,0.029995000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000119000000000,0.000000000000000,0.000000000000000,0.030888000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000461000000000,0.000000000000000,0.000000000000000,0.036835000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000000000000000,0.000000000000000,0.000159000000000,0.000000000000000,0.000000000000000,0.090994000000000,1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000 -0.000000000000000,0.000036000000000,0.000143000000000,0.000117000000000,0.000836000000000,0.001616000000000,0.002862000000000,0.000000000000000,279.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,148.000000000000000,121.000000000000000,0.170175036288445,0.209622100274678,121.000000000000000,0.310240723182540 -0.000000000000000,0.000025000000000,0.000180000000000,0.000123000000000,0.000817000000000,0.000802000000000,0.001981000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,151.000000000000000,121.000000000000000,0.200086249066279,0.226929968835210,119.000000000000000,0.335856340084193 -0.000000000000000,0.000043000000000,0.000247000000000,0.000202000000000,0.000836000000000,0.000882000000000,0.002289000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,150.000000000000000,121.000000000000000,0.220021653137765,0.250579787207819,120.000000000000000,0.370858080741496 -0.000000000000000,0.000027000000000,0.000173000000000,0.000125000000000,0.000796000000000,0.000863000000000,0.002018000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,153.000000000000000,121.000000000000000,0.241933923583207,0.315090761433966,119.000000000000000,0.466334367626374 -0.000000000000000,0.000025000000000,0.000171000000000,0.000123000000000,0.000752000000000,0.000893000000000,0.002012000000000,1.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,145.000000000000000,121.000000000000000,0.272951476803891,0.278442112643762,118.000000000000000,0.412094340922640 -0.000000000000000,0.000058000000000,0.000180000000000,0.000213000000000,0.001057000000000,0.000834000000000,0.002415000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,176.000000000000000,121.000000000000000,0.295685268713144,0.345204254249458,120.000000000000000,0.510902319377397 -0.000000000000000,0.000029000000000,0.000104000000000,0.000125000000000,0.000868000000000,0.000845000000000,0.002006000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,154.000000000000000,121.000000000000000,0.280726297104857,0.351937246921774,119.000000000000000,0.520867118388044 -0.000000000000000,0.000030000000000,0.000173000000000,0.000117000000000,0.000872000000000,0.000829000000000,0.002054000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,160.000000000000000,121.000000000000000,0.299712702632539,0.325868379793256,119.000000000000000,0.482285213145440 -0.000000000000000,0.000030000000000,0.000135000000000,0.000312000000000,0.001611000000000,0.000955000000000,0.003094000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,0.000000000000000,157.000000000000000,121.000000000000000,0.266414418920375,0.325723952270968,121.000000000000000,0.482071463677943 -0.000000000000000,0.000019000000000,0.000134000000000,0.000120000000000,0.000807000000000,0.000746000000000,0.001858000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,52.000000000000000,146.000000000000000,121.000000000000000,0.268513470166789,0.275002624777888,120.000000000000000,0.407003878905728 -0.000000000000000,0.000023000000000,0.000116000000000,0.000137000000000,0.000918000000000,0.000845000000000,0.002086000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,76.000000000000000,141.000000000000000,121.000000000000000,0.291779184224341,0.283057831418736,119.000000000000000,0.418925579815900 -0.000000000000000,0.000020000000000,0.000174000000000,0.000139000000000,0.000841000000000,0.000842000000000,0.002050000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,97.000000000000000,146.000000000000000,121.000000000000000,0.284752630550729,0.313033048850307,118.000000000000000,0.463288905244113 -0.000000000000000,0.000018000000000,0.000125000000000,0.000116000000000,0.000918000000000,0.000737000000000,0.001957000000000,1.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,108.000000000000000,164.000000000000000,121.000000000000000,0.266984542461140,0.310809088449218,117.000000000000000,0.459997446489587 -0.000000000000000,0.000025000000000,0.000187000000000,0.000215000000000,0.001123000000000,0.000838000000000,0.002412000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,82.000000000000000,172.000000000000000,121.000000000000000,0.281472742741066,0.318106456171594,118.000000000000000,0.470797581856187 -0.000000000000000,0.000032000000000,0.000104000000000,0.000133000000000,0.000982000000000,0.001074000000000,0.002360000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,82.000000000000000,169.000000000000000,121.000000000000000,0.259578544711984,0.296051216412790,118.000000000000000,0.438155829408007 -0.000000000000000,0.000026000000000,0.000173000000000,0.000114000000000,0.000975000000000,0.000678000000000,0.001991000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,87.000000000000000,169.000000000000000,121.000000000000000,0.260854021690335,0.463271429083291,119.000000000000000,0.685641725628487 -0.000000000000000,0.000020000000000,0.000231000000000,0.000213000000000,0.001255000000000,0.000764000000000,0.002547000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,100.000000000000000,162.000000000000000,121.000000000000000,0.224857460689169,0.241819176684415,120.000000000000000,0.357892398925400 -0.000000000000000,0.000016000000000,0.000174000000000,0.000123000000000,0.000964000000000,0.000761000000000,0.002072000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,177.000000000000000,163.000000000000000,121.000000000000000,0.232802572049831,0.307670939545318,121.000000000000000,0.455352982415734 -0.000000000000000,0.000019000000000,0.000171000000000,0.000117000000000,0.000954000000000,0.000685000000000,0.001989000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,215.000000000000000,163.000000000000000,121.000000000000000,0.223503314093231,0.245376537152124,121.000000000000000,0.363157262109869 -0.000000000000000,0.000022000000000,0.000153000000000,0.000321000000000,0.001789000000000,0.000999000000000,0.003323000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,236.000000000000000,160.000000000000000,121.000000000000000,0.238679756461930,0.260245176933572,121.000000000000000,0.385162868349003 -0.000000000000000,0.000017000000000,0.000103000000000,0.000121000000000,0.000950000000000,0.000690000000000,0.001925000000000,1.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,253.000000000000000,156.000000000000000,121.000000000000000,0.240028083468930,0.347317483304434,119.000000000000000,0.514029864789977 -0.000000000000000,0.000026000000000,0.000155000000000,0.000141000000000,0.001421000000000,0.000834000000000,0.002605000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,225.000000000000000,203.000000000000000,121.000000000000000,0.237050818956117,0.342187690832661,118.000000000000000,0.506437791010399 -0.000000000000000,0.000031000000000,0.000105000000000,0.000133000000000,0.001151000000000,0.000787000000000,0.002244000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,224.000000000000000,192.000000000000000,121.000000000000000,0.228256287503905,0.255917399607126,118.000000000000000,0.378757763709815 -0.000000000000000,0.000029000000000,0.000173000000000,0.000116000000000,0.001046000000000,0.000670000000000,0.002067000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,237.000000000000000,174.000000000000000,121.000000000000000,0.253024524323249,0.270830988595337,117.000000000000000,0.400829860236131 -0.000000000000000,0.000032000000000,0.000206000000000,0.000201000000000,0.001159000000000,0.000767000000000,0.002415000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,243.000000000000000,168.000000000000000,121.000000000000000,0.255837803512081,0.309767343777557,117.000000000000000,0.458455710853014 -0.000000000000000,0.000029000000000,0.000102000000000,0.000134000000000,0.001078000000000,0.000785000000000,0.002160000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,247.000000000000000,176.000000000000000,121.000000000000000,0.242039161090674,0.295753112981567,120.000000000000000,0.437714633120047 -0.000000000000000,0.000018000000000,0.000174000000000,0.000117000000000,0.001043000000000,0.000946000000000,0.002334000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,284.000000000000000,173.000000000000000,121.000000000000000,0.234035474669157,0.262962395172133,120.000000000000000,0.389184330309739 -0.000000000000000,0.000042000000000,0.000251000000000,0.000203000000000,0.001816000000000,0.000807000000000,0.003189000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,323.000000000000000,168.000000000000000,121.000000000000000,0.243963461663248,0.254676688230514,118.000000000000000,0.376921484440742 -0.000000000000000,0.000022000000000,0.000128000000000,0.000121000000000,0.001084000000000,0.000899000000000,0.002287000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,346.000000000000000,164.000000000000000,121.000000000000000,0.237498671286056,0.242318617577444,120.000000000000000,0.358631550548166 -0.000000000000000,0.000042000000000,0.000198000000000,0.000115000000000,0.001158000000000,0.000720000000000,0.002269000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,360.000000000000000,174.000000000000000,121.000000000000000,0.231204372046851,0.310626801011824,119.000000000000000,0.459727694560518 -0.000000000000000,0.000020000000000,0.000128000000000,0.000280000000000,0.000998000000000,0.000883000000000,0.002349000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,371.000000000000000,154.000000000000000,121.000000000000000,0.226372262196515,0.240389813013775,118.000000000000000,0.355776916048274 -0.000000000000000,0.000020000000000,0.000125000000000,0.000116000000000,0.001040000000000,0.000676000000000,0.002025000000000,1.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,383.000000000000000,163.000000000000000,121.000000000000000,0.243430360339485,0.289701992216838,116.000000000000000,0.428758939836188 -0.000000000000000,0.000028000000000,0.000186000000000,0.000201000000000,0.001357000000000,0.000862000000000,0.002663000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,351.000000000000000,189.000000000000000,121.000000000000000,0.238491256129826,0.289513389727138,119.000000000000000,0.428479837315611 -0.000000000000000,0.000024000000000,0.000104000000000,0.000131000000000,0.001197000000000,0.000689000000000,0.002178000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,351.000000000000000,187.000000000000000,121.000000000000000,0.253535521704090,0.299150905814168,119.000000000000000,0.442743330689269 -0.000000000000000,0.000013000000000,0.000128000000000,0.000142000000000,0.001157000000000,0.000751000000000,0.002226000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,360.000000000000000,182.000000000000000,121.000000000000000,0.242747326189240,0.331002657945821,119.000000000000000,0.489883908154680 -0.000000000000000,0.000041000000000,0.000225000000000,0.000214000000000,0.001614000000000,0.000892000000000,0.003073000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,420.000000000000000,166.000000000000000,121.000000000000000,0.214060199250618,0.291833988602564,120.000000000000000,0.431914284304601 -0.000000000000000,0.000016000000000,0.000113000000000,0.000126000000000,0.001256000000000,0.000871000000000,0.002419000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,467.000000000000000,189.000000000000000,121.000000000000000,0.191542639509251,0.219467558857437,120.000000000000000,0.324811977376153 -0.000000000000000,0.000022000000000,0.000110000000000,0.000116000000000,0.001163000000000,0.000737000000000,0.002178000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,491.000000000000000,176.000000000000000,121.000000000000000,0.237287779136815,0.290385733638894,119.000000000000000,0.429770876012296 -0.000000000000000,0.000016000000000,0.000108000000000,0.000532000000000,0.001507000000000,0.001176000000000,0.003390000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,503.000000000000000,195.000000000000000,121.000000000000000,0.255418654779892,0.271366103996528,119.000000000000000,0.401621830064983 -0.000000000000000,0.000023000000000,0.000128000000000,0.000118000000000,0.001247000000000,0.000704000000000,0.002255000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,519.000000000000000,192.000000000000000,121.000000000000000,0.243354932726649,0.322133765000893,118.000000000000000,0.476758002689501 -0.000000000000000,0.000028000000000,0.000117000000000,0.000194000000000,0.001487000000000,0.000763000000000,0.002640000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,537.000000000000000,182.000000000000000,121.000000000000000,0.256839812012575,0.290001379744665,120.000000000000000,0.429202006242450 -0.000000000000000,0.000021000000000,0.000192000000000,0.000135000000000,0.001268000000000,0.000737000000000,0.002390000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,551.000000000000000,186.000000000000000,121.000000000000000,0.234921062453291,0.278307687859489,121.000000000000000,0.411895400770342 -0.000000000000000,0.000023000000000,0.000110000000000,0.000128000000000,0.001205000000000,0.000853000000000,0.002375000000000,1.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,566.000000000000000,182.000000000000000,121.000000000000000,0.236213436253286,0.243545081705577,120.000000000000000,0.360446727806674 -0.000000000000000,0.000033000000000,0.000148000000000,0.000221000000000,0.001810000000000,0.000752000000000,0.003004000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,523.000000000000000,194.000000000000000,121.000000000000000,0.256770574347429,0.281629144927868,120.000000000000000,0.416811158357270 -0.000000000000000,0.000018000000000,0.000107000000000,0.000166000000000,0.001283000000000,0.000754000000000,0.002364000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,523.000000000000000,193.000000000000000,121.000000000000000,0.238569415669078,0.245006057597332,120.000000000000000,0.362608988913209 -0.000000000000000,0.000026000000000,0.000199000000000,0.000126000000000,0.001415000000000,0.000739000000000,0.002538000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,525.000000000000000,207.000000000000000,121.000000000000000,0.272522903927536,0.292694935292295,120.000000000000000,0.433188542480310 -0.000000000000000,0.000024000000000,0.000152000000000,0.000385000000000,0.001329000000000,0.000772000000000,0.002715000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,532.000000000000000,193.000000000000000,121.000000000000000,0.300157389608362,0.352279544787609,121.000000000000000,0.521373718272822 -0.000000000000000,0.000025000000000,0.000103000000000,0.000124000000000,0.001300000000000,0.000765000000000,0.002352000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,542.000000000000000,192.000000000000000,121.000000000000000,0.262925192895899,0.296136504354747,121.000000000000000,0.438282037121495 -0.000000000000000,0.000027000000000,0.000159000000000,0.000227000000000,0.001454000000000,0.000792000000000,0.002702000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,565.000000000000000,171.000000000000000,121.000000000000000,0.281949830225302,0.308467076957178,121.000000000000000,0.456531258033208 -0.000000000000000,0.000027000000000,0.000177000000000,0.000130000000000,0.001440000000000,0.000817000000000,0.002620000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,608.000000000000000,201.000000000000000,121.000000000000000,0.262127192155801,0.344178587739890,120.000000000000000,0.509384339297628 -0.000000000000000,0.000031000000000,0.000173000000000,0.000122000000000,0.001320000000000,0.000744000000000,0.002429000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,636.000000000000000,196.000000000000000,121.000000000000000,0.243118415564597,0.307364154563702,120.000000000000000,0.454898948018352 -0.000000000000000,0.000031000000000,0.000237000000000,0.000391000000000,0.002601000000000,0.000982000000000,0.004294000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,663.000000000000000,198.000000000000000,121.000000000000000,0.308234194177187,0.324201216218454,120.000000000000000,0.479817768949582 -0.000000000000000,0.000016000000000,0.000102000000000,0.000118000000000,0.001370000000000,0.000653000000000,0.002310000000000,1.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,687.000000000000000,198.000000000000000,121.000000000000000,0.262171425081880,0.309537417467615,120.000000000000000,0.458115349322126 -0.000000000000000,0.000024000000000,0.000120000000000,0.000223000000000,0.001806000000000,0.000776000000000,0.002976000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,661.000000000000000,229.000000000000000,121.000000000000000,0.297772053023002,0.357203726783215,120.000000000000000,0.528661518750357 -0.000000000000000,0.000022000000000,0.000131000000000,0.000225000000000,0.001322000000000,0.000818000000000,0.002549000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,661.000000000000000,195.000000000000000,121.000000000000000,0.273836774721146,0.292258185663714,119.000000000000000,0.432542138616555 -0.000000000000000,0.000028000000000,0.000189000000000,0.000113000000000,0.001354000000000,0.000656000000000,0.002369000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,668.000000000000000,208.000000000000000,121.000000000000000,0.290291300745150,0.351263582277828,120.000000000000000,0.519870092614610 -0.000000000000000,0.000020000000000,0.000106000000000,0.000362000000000,0.002527000000000,0.000881000000000,0.003941000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,682.000000000000000,211.000000000000000,121.000000000000000,0.258959916330166,0.286061529228379,120.000000000000000,0.423371078465586 -0.000000000000000,0.000023000000000,0.000183000000000,0.000117000000000,0.001452000000000,0.000716000000000,0.002520000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,696.000000000000000,219.000000000000000,121.000000000000000,0.299843168031565,0.306288599781015,118.000000000000000,0.453307123537539 -0.000000000000000,0.000024000000000,0.000190000000000,0.000229000000000,0.001590000000000,0.000704000000000,0.002778000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,704.000000000000000,201.000000000000000,121.000000000000000,0.274895969986079,0.339774469390948,119.000000000000000,0.502866218860539 -0.000000000000000,0.000032000000000,0.000184000000000,0.000127000000000,0.001388000000000,0.000658000000000,0.002422000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,712.000000000000000,205.000000000000000,121.000000000000000,0.276261011279968,0.281429264300083,120.000000000000000,0.416515325859454 -0.000000000000000,0.000019000000000,0.000103000000000,0.000122000000000,0.001302000000000,0.000759000000000,0.002334000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,743.000000000000000,194.000000000000000,121.000000000000000,0.308426080941849,0.293337004748022,118.000000000000000,0.434138764752467 -0.000000000000000,0.000020000000000,0.000188000000000,0.000336000000000,0.002590000000000,0.000953000000000,0.004130000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,769.000000000000000,216.000000000000000,121.000000000000000,0.273447755201539,0.322902569141660,119.000000000000000,0.477895792772933 -0.000000000000000,0.000019000000000,0.000104000000000,0.000118000000000,0.001466000000000,0.000743000000000,0.002480000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,791.000000000000000,204.000000000000000,121.000000000000000,0.288081750238067,0.251959938318303,120.000000000000000,0.372900704820467 -0.000000000000000,0.000024000000000,0.000118000000000,0.000231000000000,0.001575000000000,0.000986000000000,0.003013000000000,1.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,803.000000000000000,190.000000000000000,121.000000000000000,0.282457846343284,0.276454604943847,117.000000000000000,0.409152821737331 -0.000000000000000,0.000016000000000,0.000210000000000,0.000129000000000,0.001436000000000,0.000881000000000,0.002693000000000,0.000000000000000,111.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,781.000000000000000,208.000000000000000,121.000000000000000,0.294182859046983,0.317841061067694,121.000000000000000,0.470404755925379 -0.000000000000000,0.000015000000000,0.000142000000000,0.000184000000000,0.001424000000000,0.000955000000000,0.002755000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,781.000000000000000,194.000000000000000,121.000000000000000,0.243748783908456,0.304183797141307,119.000000000000000,0.450192011884479 -0.000000000000000,0.000014000000000,0.000107000000000,0.000318000000000,0.001624000000000,0.000893000000000,0.002992000000000,0.000000000000000,114.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,803.000000000000000,220.000000000000000,121.000000000000000,0.265012454662619,0.270354981784829,119.000000000000000,0.400125381617550 -0.000000000000000,0.000023000000000,0.000213000000000,0.000128000000000,0.001340000000000,0.000949000000000,0.002681000000000,0.000000000000000,113.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,811.000000000000000,196.000000000000000,121.000000000000000,0.253755971722852,0.269982133879470,119.000000000000000,0.399573570359238 -0.000000000000000,0.000038000000000,0.000249000000000,0.000219000000000,0.001747000000000,0.000847000000000,0.003214000000000,0.000000000000000,113.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,821.000000000000000,217.000000000000000,121.000000000000000,0.242158110541114,0.277566291448718,118.000000000000000,0.410798121492822 -0.000000000000000,0.000022000000000,0.000200000000000,0.000131000000000,0.001465000000000,0.000761000000000,0.002608000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,826.000000000000000,208.000000000000000,121.000000000000000,0.247025005586580,0.299927107710462,119.000000000000000,0.443892088763821 -0.000000000000000,0.000028000000000,0.000129000000000,0.000115000000000,0.001507000000000,0.000767000000000,0.002582000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,835.000000000000000,206.000000000000000,121.000000000000000,0.251694282278063,0.262688495423133,119.000000000000000,0.388778969531936 -0.000000000000000,0.000018000000000,0.000176000000000,0.000303000000000,0.001569000000000,0.000763000000000,0.002865000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,858.000000000000000,208.000000000000000,121.000000000000000,0.204259521447942,0.239471125876921,121.000000000000000,0.354417264227415 -0.000000000000000,0.000027000000000,0.000197000000000,0.000119000000000,0.001520000000000,0.000717000000000,0.002613000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,887.000000000000000,182.000000000000000,121.000000000000000,0.288688133937508,0.321107040561571,121.000000000000000,0.475238455753857 -0.000000000000000,0.000074000000000,0.000308000000000,0.000231000000000,0.002302000000000,0.000817000000000,0.004009000000000,1.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,895.000000000000000,169.000000000000000,121.000000000000000,0.226466756684178,0.283662806855079,120.000000000000000,0.419820962132456 -0.000000000000000,0.000032000000000,0.000120000000000,0.000146000000000,0.001779000000000,0.000719000000000,0.002820000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,887.000000000000000,201.000000000000000,121.000000000000000,0.248964133477333,0.301424345755280,121.000000000000000,0.446108027319984 -0.000000000000000,0.000031000000000,0.000209000000000,0.000347000000000,0.002379000000000,0.001268000000000,0.004286000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,881.000000000000000,197.000000000000000,121.000000000000000,0.197089987231914,0.215315450958625,121.000000000000000,0.318666844452755 -0.000000000000000,0.000022000000000,0.000183000000000,0.000138000000000,0.001523000000000,0.000904000000000,0.002805000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,889.000000000000000,208.000000000000000,121.000000000000000,0.211913610123421,0.217730864556872,121.000000000000000,0.322241701945577 -0.000000000000000,0.000023000000000,0.000188000000000,0.000135000000000,0.001539000000000,0.001010000000000,0.002927000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,912.000000000000000,191.000000000000000,121.000000000000000,0.223781553150169,0.264534665335954,119.000000000000000,0.391511288186158 -0.000000000000000,0.000024000000000,0.000111000000000,0.000561000000000,0.002319000000000,0.001083000000000,0.004153000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,959.000000000000000,191.000000000000000,121.000000000000000,0.192480342616366,0.242812113218322,120.000000000000000,0.359361932832411 -0.000000000000000,0.000023000000000,0.000113000000000,0.000129000000000,0.001473000000000,0.000780000000000,0.002555000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1010.000000000000000,186.000000000000000,121.000000000000000,0.226239188570666,0.246580462159093,121.000000000000000,0.364939080501376 -0.000000000000000,0.000025000000000,0.000147000000000,0.000235000000000,0.001877000000000,0.001081000000000,0.003415000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1042.000000000000000,191.000000000000000,121.000000000000000,0.213010810373553,0.226959616128893,121.000000000000000,0.335900212048673 -0.000000000000000,0.000019000000000,0.000180000000000,0.000123000000000,0.001581000000000,0.000797000000000,0.002856000000000,1.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1066.000000000000000,197.000000000000000,121.000000000000000,0.236500218717681,0.308339991149568,118.000000000000000,0.456343184784554 -0.000000000000000,0.000020000000000,0.000176000000000,0.000124000000000,0.001670000000000,0.001020000000000,0.003039000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1045.000000000000000,222.000000000000000,121.000000000000000,0.203403550946325,0.322649020817046,119.000000000000000,0.477520556062907 -0.000000000000000,0.000021000000000,0.000102000000000,0.000120000000000,0.001506000000000,0.000747000000000,0.002537000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1040.000000000000000,208.000000000000000,121.000000000000000,0.217457541731394,0.242874100604298,119.000000000000000,0.359453694988533 -0.000000000000000,0.000014000000000,0.000102000000000,0.000114000000000,0.001438000000000,0.000775000000000,0.002481000000000,0.000000000000000,114.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1048.000000000000000,202.000000000000000,121.000000000000000,0.237066555963892,0.363698547046353,120.000000000000000,0.538273825733024 -0.000000000000000,0.000028000000000,0.000138000000000,0.000130000000000,0.001867000000000,0.000905000000000,0.003190000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1051.000000000000000,204.000000000000000,121.000000000000000,0.204004037194742,0.217771792656962,121.000000000000000,0.322302253343558 -0.000000000000000,0.000016000000000,0.000108000000000,0.000146000000000,0.001730000000000,0.000807000000000,0.002848000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1092.000000000000000,216.000000000000000,121.000000000000000,0.189498788663577,0.218460412109291,119.000000000000000,0.323321417274184 -0.000000000000000,0.000021000000000,0.000142000000000,0.000136000000000,0.001571000000000,0.000950000000000,0.002860000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1150.000000000000000,195.000000000000000,121.000000000000000,0.234911243099688,0.229840840010708,121.000000000000000,0.340164460854319 -0.000000000000000,0.000023000000000,0.000178000000000,0.000327000000000,0.001509000000000,0.001060000000000,0.003143000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1188.000000000000000,188.000000000000000,121.000000000000000,0.238938910296195,0.242239031677996,119.000000000000000,0.358513758367035 -0.000000000000000,0.000026000000000,0.000127000000000,0.000121000000000,0.001413000000000,0.000746000000000,0.002666000000000,1.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1209.000000000000000,181.000000000000000,121.000000000000000,0.231069770120829,0.351821144360750,121.000000000000000,0.520695269679250 -0.000000000000000,0.000013000000000,0.000123000000000,0.000156000000000,0.002291000000000,0.000810000000000,0.003493000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1131.000000000000000,223.000000000000000,121.000000000000000,0.232050436410629,0.243086413240903,121.000000000000000,0.359767900135068 -0.000000000000000,0.000017000000000,0.000183000000000,0.000122000000000,0.001660000000000,0.000828000000000,0.002856000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1126.000000000000000,205.000000000000000,121.000000000000000,0.217672407670591,0.232176089084970,120.000000000000000,0.343620616378729 -0.000000000000000,0.000025000000000,0.000104000000000,0.000126000000000,0.001640000000000,0.000956000000000,0.002894000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1122.000000000000000,225.000000000000000,121.000000000000000,0.210874531577464,0.231177462797771,120.000000000000000,0.342142641667492 -0.000000000000000,0.000011000000000,0.000104000000000,0.000149000000000,0.001579000000000,0.000928000000000,0.002811000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1124.000000000000000,218.000000000000000,121.000000000000000,0.199068638688048,0.231930228681434,121.000000000000000,0.343256752009726 -0.000000000000000,0.000016000000000,0.000105000000000,0.000114000000000,0.001529000000000,0.000835000000000,0.002636000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1131.000000000000000,217.000000000000000,121.000000000000000,0.199461859922069,0.201973412653913,121.000000000000000,0.298920644384362 -0.000000000000000,0.000020000000000,0.000107000000000,0.000175000000000,0.002271000000000,0.000832000000000,0.003453000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1170.000000000000000,216.000000000000000,121.000000000000000,0.220686177070489,0.284068818474203,121.000000000000000,0.420421851360250 -0.000000000000000,0.000021000000000,0.000110000000000,0.000115000000000,0.001720000000000,0.000987000000000,0.002996000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1207.000000000000000,220.000000000000000,121.000000000000000,0.211157109658996,0.207022193542394,121.000000000000000,0.306392853689555 -0.000000000000000,0.000019000000000,0.000128000000000,0.000124000000000,0.001660000000000,0.000836000000000,0.002805000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1249.000000000000000,230.000000000000000,121.000000000000000,0.227298389602018,0.273505984323976,121.000000000000000,0.404788875408716 -0.000000000000000,0.000019000000000,0.000103000000000,0.000135000000000,0.001696000000000,0.000751000000000,0.002919000000000,1.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1276.000000000000000,235.000000000000000,121.000000000000000,0.230641563123264,0.341660758731761,121.000000000000000,0.505657951678639 -0.000000000000000,0.000015000000000,0.000177000000000,0.000130000000000,0.001556000000000,0.000919000000000,0.002864000000000,0.000000000000000,106.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1118.000000000000000,225.000000000000000,121.000000000000000,0.192303276106424,0.284766422639249,121.000000000000000,0.421454308293938 -0.000000000000000,0.000013000000000,0.000138000000000,0.000178000000000,0.002041000000000,0.000992000000000,0.003412000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1112.000000000000000,223.000000000000000,121.000000000000000,0.206634709237684,0.414844586254086,120.000000000000000,0.613969997701391 -0.000000000000000,0.000015000000000,0.000134000000000,0.000127000000000,0.001905000000000,0.000764000000000,0.002995000000000,0.000000000000000,113.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1116.000000000000000,248.000000000000000,121.000000000000000,0.217282816286385,0.386388750278064,121.000000000000000,0.571855388443357 -0.000000000000000,0.000016000000000,0.000128000000000,0.000127000000000,0.001825000000000,0.000925000000000,0.003066000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1115.000000000000000,245.000000000000000,121.000000000000000,0.205232081617916,0.260414398266005,121.000000000000000,0.385413312570202 -0.000000000000000,0.000020000000000,0.000107000000000,0.000141000000000,0.001807000000000,0.000923000000000,0.003060000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1141.000000000000000,234.000000000000000,121.000000000000000,0.215575249362573,0.253408200953891,120.000000000000000,0.375044163656510 -0.000000000000000,0.000019000000000,0.000128000000000,0.000120000000000,0.001568000000000,0.000884000000000,0.002762000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1162.000000000000000,189.000000000000000,121.000000000000000,0.263382144346756,0.344167879309156,121.000000000000000,0.509368468563933 -0.000000000000000,0.000023000000000,0.000131000000000,0.000373000000000,0.001757000000000,0.001182000000000,0.003515000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1191.000000000000000,211.000000000000000,121.000000000000000,0.211945557067404,0.302128504397490,121.000000000000000,0.447150188651345 -0.000000000000000,0.000025000000000,0.000154000000000,0.000124000000000,0.001844000000000,0.000803000000000,0.003004000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1216.000000000000000,227.000000000000000,121.000000000000000,0.202381916559221,0.390013881008811,120.000000000000000,0.577220555675650 -0.000000000000000,0.000015000000000,0.000109000000000,0.000129000000000,0.001708000000000,0.000890000000000,0.002894000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1231.000000000000000,213.000000000000000,121.000000000000000,0.214162701863959,0.216971594768139,120.000000000000000,0.321117988293146 -0.000000000000000,0.000019000000000,0.000106000000000,0.000141000000000,0.001738000000000,0.000788000000000,0.002834000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1244.000000000000000,223.000000000000000,121.000000000000000,0.199426583525084,0.257295226754736,121.000000000000000,0.380796925542741 -0.000000000000000,0.000015000000000,0.000104000000000,0.000127000000000,0.001749000000000,0.000817000000000,0.002854000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1244.000000000000000,237.000000000000000,121.000000000000000,0.197980287517504,0.261753748672962,121.000000000000000,0.387395536882405 -0.000000000000000,0.000022000000000,0.000120000000000,0.000159000000000,0.002300000000000,0.000963000000000,0.003628000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1233.000000000000000,228.000000000000000,121.000000000000000,0.236498759179881,0.240201532654298,121.000000000000000,0.355498268421338 -0.000000000000000,0.000017000000000,0.000181000000000,0.000128000000000,0.001959000000000,0.000872000000000,0.003382000000000,1.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1223.000000000000000,248.000000000000000,121.000000000000000,0.184287569106640,0.201686577196243,121.000000000000000,0.298496127529902 -0.000000000000000,0.000013000000000,0.000178000000000,0.000136000000000,0.001684000000000,0.000852000000000,0.002943000000000,0.000000000000000,113.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1105.000000000000000,230.000000000000000,121.000000000000000,0.190585604418642,0.200521952748998,120.000000000000000,0.296772510252565 -0.000000000000000,0.000019000000000,0.000106000000000,0.000143000000000,0.001668000000000,0.000981000000000,0.002955000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1104.000000000000000,218.000000000000000,121.000000000000000,0.200527511479873,0.209064190915326,120.000000000000000,0.309415015408653 -0.000000000000000,0.000014000000000,0.000104000000000,0.000123000000000,0.001517000000000,0.000849000000000,0.002647000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1144.000000000000000,201.000000000000000,121.000000000000000,0.227018266784565,0.269186250934732,121.000000000000000,0.398395648547930 -0.000000000000000,0.000017000000000,0.000178000000000,0.000348000000000,0.001620000000000,0.001141000000000,0.003354000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1182.000000000000000,206.000000000000000,121.000000000000000,0.206456021778136,0.213075158345683,121.000000000000000,0.315351251063391 -0.000000000000000,0.000026000000000,0.000108000000000,0.000150000000000,0.001619000000000,0.000821000000000,0.002770000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1214.000000000000000,197.000000000000000,121.000000000000000,0.195769620795380,0.235699009656539,120.000000000000000,0.348834556747284 -0.000000000000000,0.000018000000000,0.000178000000000,0.000127000000000,0.001593000000000,0.000826000000000,0.002776000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1234.000000000000000,206.000000000000000,121.000000000000000,0.202443810598108,0.259322628022743,121.000000000000000,0.383797505085764 -0.000000000000000,0.000018000000000,0.000105000000000,0.000140000000000,0.001539000000000,0.001030000000000,0.002870000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1255.000000000000000,195.000000000000000,121.000000000000000,0.234795060265796,0.251596569636394,120.000000000000000,0.372362919449417 -0.000000000000000,0.000017000000000,0.000175000000000,0.000125000000000,0.001584000000000,0.000833000000000,0.002923000000000,1.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1267.000000000000000,221.000000000000000,121.000000000000000,0.207163879614002,0.272216719799699,121.000000000000000,0.402880748216245 -0.000000000000000,0.000017000000000,0.000133000000000,0.000153000000000,0.002442000000000,0.000831000000000,0.003670000000000,0.000000000000000,112.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1147.000000000000000,216.000000000000000,121.000000000000000,0.170524915168911,0.199849692332816,121.000000000000000,0.295777531500515 -0.000000000000000,0.000013000000000,0.000157000000000,0.000149000000000,0.001748000000000,0.000942000000000,0.003057000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1147.000000000000000,234.000000000000000,121.000000000000000,0.189221335752284,0.197743002271810,121.000000000000000,0.292659639941872 -0.000000000000000,0.000020000000000,0.000178000000000,0.000125000000000,0.001721000000000,0.000742000000000,0.002827000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1176.000000000000000,225.000000000000000,121.000000000000000,0.198900978356214,0.245389821232497,119.000000000000000,0.363176948895773 -0.000000000000000,0.000013000000000,0.000176000000000,0.000145000000000,0.001697000000000,0.000855000000000,0.002929000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1221.000000000000000,222.000000000000000,121.000000000000000,0.196051895442564,0.262432687056220,121.000000000000000,0.388400396935210 -0.000000000000000,0.000015000000000,0.000176000000000,0.000128000000000,0.001658000000000,0.000736000000000,0.002754000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1264.000000000000000,222.000000000000000,121.000000000000000,0.188130722176495,0.226906201366918,120.000000000000000,0.335821186914497 -0.000000000000000,0.000015000000000,0.000114000000000,0.000128000000000,0.001732000000000,0.000994000000000,0.003025000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1280.000000000000000,221.000000000000000,121.000000000000000,0.195205519657246,0.208004184809569,119.000000000000000,0.307846188328575 -0.000000000000000,0.000020000000000,0.000195000000000,0.000126000000000,0.002006000000000,0.000791000000000,0.003194000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1295.000000000000000,262.000000000000000,121.000000000000000,0.204929539974912,0.216820480192029,119.000000000000000,0.320894306981155 -0.000000000000000,0.000017000000000,0.000176000000000,0.000139000000000,0.001546000000000,0.000896000000000,0.002812000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1303.000000000000000,192.000000000000000,121.000000000000000,0.226704780607630,0.257512342665443,120.000000000000000,0.381118257356317 -0.000000000000000,0.000011000000000,0.000105000000000,0.000299000000000,0.001761000000000,0.001102000000000,0.003328000000000,0.000000000000000,114.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1303.000000000000000,234.000000000000000,121.000000000000000,0.206579202251784,0.240623999885611,121.000000000000000,0.356123519730790 -0.000000000000000,0.000020000000000,0.000103000000000,0.000130000000000,0.001498000000000,0.000871000000000,0.002766000000000,1.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1312.000000000000000,207.000000000000000,121.000000000000000,0.208586912880041,0.214158703806542,121.000000000000000,0.316954877506999 -0.000000000000000,0.000017000000000,0.000176000000000,0.000374000000000,0.001665000000000,0.000976000000000,0.003373000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1139.000000000000000,223.000000000000000,121.000000000000000,0.209543770412094,0.213150938854858,121.000000000000000,0.315463382345879 -0.000000000000000,0.000021000000000,0.000157000000000,0.000124000000000,0.001652000000000,0.000947000000000,0.002947000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1137.000000000000000,212.000000000000000,121.000000000000000,0.214888927283406,0.261239649375707,120.000000000000000,0.386634701996087 -0.000000000000000,0.000018000000000,0.000104000000000,0.000124000000000,0.001479000000000,0.000897000000000,0.002661000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1182.000000000000000,188.000000000000000,121.000000000000000,0.205526459876717,0.194046988139053,121.000000000000000,0.287189543909738 -0.000000000000000,0.000016000000000,0.000175000000000,0.000142000000000,0.001509000000000,0.000744000000000,0.002626000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1230.000000000000000,190.000000000000000,121.000000000000000,0.193638964960760,0.209501566643394,121.000000000000000,0.310062329059690 -0.000000000000000,0.000022000000000,0.000103000000000,0.000125000000000,0.001561000000000,0.000725000000000,0.002572000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1250.000000000000000,218.000000000000000,121.000000000000000,0.192895828207804,0.213686959411965,121.000000000000000,0.316256716855654 -0.000000000000000,0.000023000000000,0.000184000000000,0.000162000000000,0.001899000000000,0.000812000000000,0.003140000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1258.000000000000000,187.000000000000000,121.000000000000000,0.178433372351327,0.196124969530122,120.000000000000000,0.290264953456693 -0.000000000000000,0.000016000000000,0.000134000000000,0.000140000000000,0.001663000000000,0.000876000000000,0.002874000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1274.000000000000000,203.000000000000000,121.000000000000000,0.204379056805537,0.211513754780143,119.000000000000000,0.313040366095618 -0.000000000000000,0.000020000000000,0.000176000000000,0.000130000000000,0.001587000000000,0.000869000000000,0.002823000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1284.000000000000000,206.000000000000000,121.000000000000000,0.194394953473234,0.214318086264921,121.000000000000000,0.317190765131688 -0.000000000000000,0.000017000000000,0.000107000000000,0.000148000000000,0.001575000000000,0.000805000000000,0.002693000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1286.000000000000000,205.000000000000000,121.000000000000000,0.192692252511560,0.217301832678175,121.000000000000000,0.321606720966583 -0.000000000000000,0.000020000000000,0.000173000000000,0.000124000000000,0.001507000000000,0.000785000000000,0.002649000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1278.000000000000000,210.000000000000000,121.000000000000000,0.204881580167579,0.231890569564824,121.000000000000000,0.343198045458178 -0.000000000000000,0.000041000000000,0.000220000000000,0.000144000000000,0.001900000000000,0.000655000000000,0.003038000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1278.000000000000000,206.000000000000000,121.000000000000000,0.174115401194611,0.223973720218107,121.000000000000000,0.331481122502030 -0.000000000000000,0.000043000000000,0.000182000000000,0.000145000000000,0.001457000000000,0.000728000000000,0.002734000000000,1.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1272.000000000000000,191.000000000000000,121.000000000000000,0.194538477548438,0.187220557909554,121.000000000000000,0.277086431960381 -0.000000000000000,0.000020000000000,0.000182000000000,0.000129000000000,0.001451000000000,0.000813000000000,0.002657000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1148.000000000000000,207.000000000000000,121.000000000000000,0.209547468410092,0.205381330935579,119.000000000000000,0.303964378715603 -0.000000000000000,0.000037000000000,0.000255000000000,0.000211000000000,0.002943000000000,0.001198000000000,0.004740000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1146.000000000000000,192.000000000000000,121.000000000000000,0.194112090334278,0.213834860708738,121.000000000000000,0.316475596512546 -0.000000000000000,0.000021000000000,0.000119000000000,0.000128000000000,0.001482000000000,0.000836000000000,0.002622000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1196.000000000000000,188.000000000000000,121.000000000000000,0.194707145965396,0.200711676435348,120.000000000000000,0.297053280716492 -0.000000000000000,0.000018000000000,0.000128000000000,0.000353000000000,0.001530000000000,0.001123000000000,0.003198000000000,0.000000000000000,113.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1222.000000000000000,182.000000000000000,121.000000000000000,0.165297929068422,0.223118899091734,120.000000000000000,0.330215962199139 -0.000000000000000,0.000019000000000,0.000133000000000,0.000124000000000,0.001554000000000,0.001016000000000,0.002890000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1250.000000000000000,187.000000000000000,121.000000000000000,0.189732092265728,0.231665076279646,121.000000000000000,0.342864305156952 -0.000000000000000,0.000018000000000,0.000195000000000,0.000130000000000,0.001387000000000,0.000871000000000,0.002639000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1278.000000000000000,167.000000000000000,121.000000000000000,0.173396135722069,0.185374303680201,121.000000000000000,0.274353961674946 -0.000000000000000,0.000015000000000,0.000105000000000,0.000165000000000,0.001566000000000,0.001052000000000,0.002950000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1292.000000000000000,196.000000000000000,121.000000000000000,0.192868888286218,0.205034141945327,120.000000000000000,0.303450551076308 -0.000000000000000,0.000014000000000,0.000102000000000,0.000127000000000,0.001521000000000,0.000791000000000,0.002592000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1302.000000000000000,199.000000000000000,121.000000000000000,0.190528673137881,0.222906754530888,121.000000000000000,0.329902009771293 -0.000000000000000,0.000021000000000,0.000215000000000,0.000167000000000,0.001934000000000,0.000805000000000,0.003204000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1308.000000000000000,190.000000000000000,121.000000000000000,0.202526348712512,0.259278841345545,120.000000000000000,0.383732682741932 -0.000000000000000,0.000022000000000,0.000156000000000,0.000126000000000,0.001696000000000,0.000788000000000,0.002834000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1308.000000000000000,190.000000000000000,121.000000000000000,0.196451913404442,0.201069768524068,120.000000000000000,0.297583282351909 -0.000000000000000,0.000025000000000,0.000103000000000,0.000132000000000,0.001543000000000,0.000902000000000,0.002745000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1305.000000000000000,194.000000000000000,121.000000000000000,0.200871633124814,0.183908150343481,120.000000000000000,0.272184068463992 -0.000000000000000,0.000025000000000,0.000102000000000,0.000150000000000,0.001478000000000,0.000854000000000,0.002788000000000,1.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1335.000000000000000,179.000000000000000,121.000000000000000,0.193823047570574,0.212329442302877,119.000000000000000,0.314247578003029 -0.000000000000000,0.000016000000000,0.000196000000000,0.000126000000000,0.001299000000000,0.000752000000000,0.002455000000000,0.000000000000000,112.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1194.000000000000000,176.000000000000000,121.000000000000000,0.207923081779578,0.229508478265270,121.000000000000000,0.339672543925396 -0.000000000000000,0.000018000000000,0.000110000000000,0.000166000000000,0.001844000000000,0.000982000000000,0.003170000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1189.000000000000000,180.000000000000000,121.000000000000000,0.163342705330096,0.249575746286056,120.000000000000000,0.369372120119674 -0.000000000000000,0.000015000000000,0.000183000000000,0.000124000000000,0.001749000000000,0.000847000000000,0.002963000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1218.000000000000000,212.000000000000000,121.000000000000000,0.173881865983057,0.194395754595030,121.000000000000000,0.287705721832844 -0.000000000000000,0.000026000000000,0.000176000000000,0.000127000000000,0.001498000000000,0.000877000000000,0.002752000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1259.000000000000000,185.000000000000000,121.000000000000000,0.155523040470466,0.162766723518840,120.000000000000000,0.240894740082153 -0.000000000000000,0.000015000000000,0.000177000000000,0.000144000000000,0.001550000000000,0.000743000000000,0.002669000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1278.000000000000000,192.000000000000000,121.000000000000000,0.152934150143871,0.272911472202902,121.000000000000000,0.403908984747820 -0.000000000000000,0.000014000000000,0.000174000000000,0.000116000000000,0.001439000000000,0.000731000000000,0.002513000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1291.000000000000000,196.000000000000000,121.000000000000000,0.188113809380047,0.184618919088813,121.000000000000000,0.273236010008633 -0.000000000000000,0.000016000000000,0.000106000000000,0.000145000000000,0.002198000000000,0.000804000000000,0.003318000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1299.000000000000000,184.000000000000000,121.000000000000000,0.189391540723312,0.210953756830538,121.000000000000000,0.312211549881851 -0.000000000000000,0.000019000000000,0.000181000000000,0.000116000000000,0.001662000000000,0.000840000000000,0.002865000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1306.000000000000000,204.000000000000000,121.000000000000000,0.184488742976474,0.215925329354907,121.000000000000000,0.319569479795696 -0.000000000000000,0.000016000000000,0.000183000000000,0.000132000000000,0.001540000000000,0.000737000000000,0.002647000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1313.000000000000000,197.000000000000000,121.000000000000000,0.164667840588859,0.233194073999862,121.000000000000000,0.345127224117476 -0.000000000000000,0.000017000000000,0.000177000000000,0.000144000000000,0.001453000000000,0.000747000000000,0.002725000000000,1.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1307.000000000000000,179.000000000000000,121.000000000000000,0.190996220324968,0.267097150771334,121.000000000000000,0.395303787014294 -0.000000000000000,0.000017000000000,0.000177000000000,0.000120000000000,0.001414000000000,0.000681000000000,0.002474000000000,0.000000000000000,113.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1109.000000000000000,205.000000000000000,121.000000000000000,0.175048358387321,0.227273301247532,121.000000000000000,0.336364481552976 -0.000000000000000,0.000023000000000,0.000186000000000,0.000160000000000,0.001932000000000,0.000738000000000,0.003097000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1100.000000000000000,194.000000000000000,121.000000000000000,0.173557283673669,0.191658131610694,121.000000000000000,0.283654034716855 -0.000000000000000,0.000019000000000,0.000107000000000,0.000116000000000,0.001671000000000,0.000745000000000,0.002708000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1144.000000000000000,204.000000000000000,121.000000000000000,0.158568907261423,0.243359531069700,121.000000000000000,0.360172098406900 -0.000000000000000,0.000018000000000,0.000103000000000,0.000132000000000,0.001512000000000,0.000732000000000,0.002547000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1187.000000000000000,194.000000000000000,121.000000000000000,0.146749823653506,0.164413086505490,121.000000000000000,0.243331352597904 -0.000000000000000,0.000014000000000,0.000181000000000,0.000144000000000,0.001537000000000,0.000892000000000,0.002808000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1214.000000000000000,196.000000000000000,121.000000000000000,0.131283592229348,0.155956326816494,121.000000000000000,0.230815358417731 -0.000000000000000,0.000012000000000,0.000176000000000,0.000121000000000,0.001482000000000,0.000877000000000,0.002705000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1244.000000000000000,196.000000000000000,121.000000000000000,0.159033296053125,0.194395333842714,121.000000000000000,0.287705090036121 -0.000000000000000,0.000020000000000,0.000211000000000,0.000162000000000,0.001881000000000,0.000840000000000,0.003174000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1262.000000000000000,184.000000000000000,121.000000000000000,0.163845159646448,0.177604150932044,121.000000000000000,0.262854149344864 -0.000000000000000,0.000015000000000,0.000115000000000,0.000124000000000,0.001771000000000,0.000924000000000,0.002997000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1269.000000000000000,218.000000000000000,121.000000000000000,0.167741708685618,0.187775885781358,121.000000000000000,0.277908323682058 -0.000000000000000,0.000012000000000,0.000104000000000,0.000127000000000,0.001764000000000,0.000780000000000,0.002830000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1278.000000000000000,229.000000000000000,121.000000000000000,0.186347950475868,0.251813866360726,121.000000000000000,0.372684503981683 -0.000000000000000,0.000020000000000,0.000102000000000,0.000142000000000,0.001444000000000,0.000872000000000,0.002621000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1275.000000000000000,174.000000000000000,121.000000000000000,0.166303486197133,0.189747084068580,120.000000000000000,0.280825682960661 -0.000000000000000,0.000016000000000,0.000125000000000,0.000117000000000,0.001504000000000,0.000769000000000,0.002568000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1276.000000000000000,202.000000000000000,121.000000000000000,0.167769122437661,0.195787376215580,121.000000000000000,0.289765303335874 -0.000000000000000,0.000029000000000,0.000158000000000,0.000154000000000,0.001818000000000,0.000771000000000,0.003044000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1304.000000000000000,177.000000000000000,121.000000000000000,0.158463858246833,0.191255881763862,119.000000000000000,0.283058705300228 -0.000000000000000,0.000020000000000,0.000185000000000,0.000118000000000,0.001683000000000,0.000786000000000,0.002860000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1339.000000000000000,206.000000000000000,121.000000000000000,0.161183566619254,0.178028171732775,121.000000000000000,0.263481700394391 -0.000000000000000,0.000017000000000,0.000177000000000,0.000136000000000,0.001597000000000,0.000782000000000,0.002874000000000,1.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1383.000000000000000,198.000000000000000,121.000000000000000,0.142916686874711,0.162123928033689,121.000000000000000,0.239943431119633 -0.000000000000000,0.000016000000000,0.000127000000000,0.000234000000000,0.001629000000000,0.000716000000000,0.002906000000000,0.000000000000000,113.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1223.000000000000000,214.000000000000000,121.000000000000000,0.154355717762879,0.218609409653489,121.000000000000000,0.323541914330688 -0.000000000000000,0.000018000000000,0.000175000000000,0.000117000000000,0.001623000000000,0.000874000000000,0.002848000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1218.000000000000000,227.000000000000000,121.000000000000000,0.174558038196839,0.199124535422790,121.000000000000000,0.294704311042227 -0.000000000000000,0.000023000000000,0.000101000000000,0.000109000000000,0.001533000000000,0.000703000000000,0.002504000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1228.000000000000000,215.000000000000000,121.000000000000000,0.137995003938898,0.152632389051692,121.000000000000000,0.225895936409808 -0.000000000000000,0.000027000000000,0.000177000000000,0.000139000000000,0.001775000000000,0.000662000000000,0.002820000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1232.000000000000000,237.000000000000000,121.000000000000000,0.135541904251767,0.167668386817417,121.000000000000000,0.248149206964557 -0.000000000000000,0.000022000000000,0.000181000000000,0.000307000000000,0.001635000000000,0.001033000000000,0.003237000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1233.000000000000000,200.000000000000000,121.000000000000000,0.163536557849499,0.206044880204936,121.000000000000000,0.304946443542624 -0.000000000000000,0.000013000000000,0.000197000000000,0.000138000000000,0.001693000000000,0.000665000000000,0.002750000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1227.000000000000000,224.000000000000000,121.000000000000000,0.153373223673703,0.199555553830275,120.000000000000000,0.295342223558018 -0.000000000000000,0.000022000000000,0.000130000000000,0.000127000000000,0.001747000000000,0.000744000000000,0.002816000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1223.000000000000000,234.000000000000000,121.000000000000000,0.139032943637894,0.186670354479152,121.000000000000000,0.276272121799386 -0.000000000000000,0.000023000000000,0.000189000000000,0.000117000000000,0.001436000000000,0.000905000000000,0.002707000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1223.000000000000000,191.000000000000000,121.000000000000000,0.139072087006321,0.170137357542569,121.000000000000000,0.251803291766507 -0.000000000000000,0.000019000000000,0.000189000000000,0.000134000000000,0.001636000000000,0.001043000000000,0.003059000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1226.000000000000000,205.000000000000000,121.000000000000000,0.147221191440148,0.219839242753776,121.000000000000000,0.325362095419246 -0.000000000000000,0.000026000000000,0.000136000000000,0.000141000000000,0.001640000000000,0.000834000000000,0.002814000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1226.000000000000000,198.000000000000000,121.000000000000000,0.134535729635055,0.177361976863745,120.000000000000000,0.262495743699553 -0.000000000000000,0.000024000000000,0.000188000000000,0.000137000000000,0.001576000000000,0.000999000000000,0.002968000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1224.000000000000000,202.000000000000000,121.000000000000000,0.150440594097383,0.170822892372034,120.000000000000000,0.252817881488855 -0.000000000000000,0.000018000000000,0.000128000000000,0.000123000000000,0.001595000000000,0.000906000000000,0.002923000000000,1.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1223.000000000000000,211.000000000000000,121.000000000000000,0.161157776486683,0.176850558454008,121.000000000000000,0.261738825952921 -0.000000000000000,0.000023000000000,0.000171000000000,0.000136000000000,0.001546000000000,0.000836000000000,0.002772000000000,0.000000000000000,112.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1094.000000000000000,211.000000000000000,121.000000000000000,0.135044752661059,0.176661372259443,121.000000000000000,0.261458838916931 -0.000000000000000,0.000016000000000,0.000180000000000,0.000129000000000,0.001692000000000,0.000849000000000,0.002919000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1089.000000000000000,203.000000000000000,121.000000000000000,0.143949354754192,0.167668782751111,120.000000000000000,0.248149788217542 -0.000000000000000,0.000017000000000,0.000108000000000,0.000139000000000,0.001568000000000,0.000704000000000,0.002578000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1166.000000000000000,200.000000000000000,121.000000000000000,0.155160670749007,0.231930876186467,120.000000000000000,0.343257712340746 -0.000000000000000,0.000035000000000,0.000227000000000,0.000132000000000,0.001664000000000,0.000790000000000,0.002968000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1216.000000000000000,195.000000000000000,121.000000000000000,0.133676069237326,0.147626375091364,120.000000000000000,0.218487058408179 -0.000000000000000,0.000015000000000,0.000128000000000,0.000120000000000,0.001551000000000,0.000732000000000,0.002590000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1232.000000000000000,204.000000000000000,121.000000000000000,0.122400626475427,0.146223124911287,121.000000000000000,0.216410216218663 -0.000000000000000,0.000020000000000,0.000245000000000,0.000118000000000,0.001618000000000,0.000770000000000,0.002815000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1238.000000000000000,219.000000000000000,121.000000000000000,0.137303784430655,0.150577933818061,121.000000000000000,0.222855351498252 -0.000000000000000,0.000016000000000,0.000214000000000,0.000131000000000,0.001570000000000,0.000888000000000,0.002875000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1239.000000000000000,183.000000000000000,121.000000000000000,0.131464957645487,0.148026075188344,121.000000000000000,0.219078597044465 -0.000000000000000,0.000018000000000,0.000103000000000,0.000139000000000,0.001556000000000,0.000929000000000,0.002796000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1234.000000000000000,197.000000000000000,121.000000000000000,0.128347170794260,0.131002024287506,121.000000000000000,0.193882998604601 -0.000000000000000,0.000034000000000,0.000281000000000,0.000139000000000,0.001662000000000,0.000725000000000,0.002956000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1226.000000000000000,194.000000000000000,121.000000000000000,0.162024538919116,0.207094523301695,121.000000000000000,0.306499905326386 -0.000000000000000,0.000019000000000,0.000198000000000,0.000119000000000,0.001621000000000,0.000844000000000,0.002973000000000,1.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1223.000000000000000,215.000000000000000,121.000000000000000,0.153235488057770,0.262436341625619,121.000000000000000,0.388405779843294 -0.000000000000000,0.000021000000000,0.000198000000000,0.000131000000000,0.001561000000000,0.000847000000000,0.002828000000000,0.000000000000000,114.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1054.000000000000000,201.000000000000000,121.000000000000000,0.157919685289792,0.167838875425546,121.000000000000000,0.248401521304057 -0.000000000000000,0.000015000000000,0.000170000000000,0.000130000000000,0.001648000000000,0.000666000000000,0.002683000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1048.000000000000000,211.000000000000000,121.000000000000000,0.142424009465490,0.209332762567431,120.000000000000000,0.309812491363346 -0.000000000000000,0.000020000000000,0.000127000000000,0.000139000000000,0.001528000000000,0.000726000000000,0.002588000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1039.000000000000000,207.000000000000000,121.000000000000000,0.140603779602412,0.159626649619649,121.000000000000000,0.236247445558979 -0.000000000000000,0.000019000000000,0.000194000000000,0.000143000000000,0.001999000000000,0.000624000000000,0.003025000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1040.000000000000000,205.000000000000000,121.000000000000000,0.147458908627836,0.237281094131071,121.000000000000000,0.351176020676474 -0.000000000000000,0.000022000000000,0.000175000000000,0.000126000000000,0.001454000000000,0.000837000000000,0.002656000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1106.000000000000000,198.000000000000000,121.000000000000000,0.125862132363062,0.146166756283214,120.000000000000000,0.216326793779291 -0.000000000000000,0.000018000000000,0.000233000000000,0.000119000000000,0.001470000000000,0.000923000000000,0.002807000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1145.000000000000000,188.000000000000000,121.000000000000000,0.148866800739627,0.175671536734951,121.000000000000000,0.259993879218198 -0.000000000000000,0.000021000000000,0.000205000000000,0.000128000000000,0.001543000000000,0.000761000000000,0.002708000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1156.000000000000000,186.000000000000000,121.000000000000000,0.127848678819928,0.170790549426913,121.000000000000000,0.252770016569082 -0.000000000000000,0.000016000000000,0.000176000000000,0.000145000000000,0.001515000000000,0.000719000000000,0.002758000000000,1.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1165.000000000000000,189.000000000000000,121.000000000000000,0.145912191034524,0.246210134411681,121.000000000000000,0.364391034751536 -0.000000000000000,0.000017000000000,0.000137000000000,0.000142000000000,0.001535000000000,0.000625000000000,0.002544000000000,0.000000000000000,112.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1007.000000000000000,197.000000000000000,121.000000000000000,0.155415123408675,0.250107101898265,121.000000000000000,0.370158504865490 -0.000000000000000,0.000018000000000,0.000187000000000,0.000129000000000,0.001485000000000,0.000745000000000,0.002609000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,997.000000000000000,196.000000000000000,121.000000000000000,0.156330994449520,0.195977327324711,121.000000000000000,0.290046452877835 -0.000000000000000,0.000027000000000,0.000216000000000,0.000122000000000,0.001463000000000,0.000715000000000,0.002603000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,994.000000000000000,202.000000000000000,121.000000000000000,0.148181823678736,0.163960783045368,121.000000000000000,0.242661951333412 -0.000000000000000,0.000021000000000,0.000148000000000,0.000131000000000,0.001726000000000,0.000788000000000,0.002871000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,990.000000000000000,214.000000000000000,121.000000000000000,0.159041550968813,0.290710356872846,121.000000000000000,0.430251294240852 -0.000000000000000,0.000014000000000,0.000109000000000,0.000146000000000,0.001782000000000,0.000832000000000,0.002935000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,989.000000000000000,237.000000000000000,121.000000000000000,0.144598980992546,0.166027958406800,121.000000000000000,0.245721363787328 -0.000000000000000,0.000033000000000,0.000225000000000,0.000141000000000,0.001562000000000,0.000724000000000,0.002797000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,989.000000000000000,200.000000000000000,121.000000000000000,0.138993500529387,0.196990361228138,121.000000000000000,0.291545731774589 -0.000000000000000,0.000018000000000,0.000102000000000,0.000130000000000,0.001577000000000,0.000768000000000,0.002776000000000,1.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1025.000000000000000,218.000000000000000,121.000000000000000,0.159928213604770,0.189984919538914,121.000000000000000,0.281177669551262 -0.000000000000000,0.000012000000000,0.000247000000000,0.000124000000000,0.001584000000000,0.000607000000000,0.002648000000000,0.000000000000000,108.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,912.000000000000000,232.000000000000000,121.000000000000000,0.169367654114597,0.221725877325533,121.000000000000000,0.328154308402856 -0.000000000000000,0.000029000000000,0.000128000000000,0.000128000000000,0.001642000000000,0.000782000000000,0.002760000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,911.000000000000000,211.000000000000000,121.000000000000000,0.147968518377667,0.154122927463339,121.000000000000000,0.228101943121478 -0.000000000000000,0.000016000000000,0.000176000000000,0.000142000000000,0.001527000000000,0.000917000000000,0.002821000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,946.000000000000000,207.000000000000000,121.000000000000000,0.137541055415491,0.157761641471241,121.000000000000000,0.233487226761447 -0.000000000000000,0.000032000000000,0.000147000000000,0.000136000000000,0.001548000000000,0.000751000000000,0.002712000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,954.000000000000000,199.000000000000000,121.000000000000000,0.162415187446687,0.197580421079148,121.000000000000000,0.292419026477691 -0.000000000000000,0.000019000000000,0.000178000000000,0.000129000000000,0.001473000000000,0.000728000000000,0.002570000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,952.000000000000000,191.000000000000000,121.000000000000000,0.171041015417160,0.194915117263576,121.000000000000000,0.288474365726664 -0.000000000000000,0.000029000000000,0.000197000000000,0.000115000000000,0.001354000000000,0.000809000000000,0.002551000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,965.000000000000000,175.000000000000000,121.000000000000000,0.154222763807780,0.285544163762687,120.000000000000000,0.422605366108563 -0.000000000000000,0.000019000000000,0.000139000000000,0.000125000000000,0.001460000000000,0.000814000000000,0.002600000000000,0.000000000000000,114.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,968.000000000000000,171.000000000000000,121.000000000000000,0.150595603214115,0.221852768512487,121.000000000000000,0.328342103660952 -0.000000000000000,0.000013000000000,0.000104000000000,0.000134000000000,0.001356000000000,0.000752000000000,0.002398000000000,0.000000000000000,113.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,996.000000000000000,168.000000000000000,121.000000000000000,0.147430237486138,0.148159285827304,121.000000000000000,0.219275742894069 -0.000000000000000,0.000020000000000,0.000193000000000,0.000142000000000,0.001953000000000,0.000947000000000,0.003301000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1030.000000000000000,177.000000000000000,121.000000000000000,0.145798815037739,0.159663663944367,121.000000000000000,0.236302234970841 -0.000000000000000,0.000015000000000,0.000103000000000,0.000115000000000,0.001290000000000,0.000699000000000,0.002255000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1048.000000000000000,172.000000000000000,121.000000000000000,0.142196014156506,0.187147109561421,121.000000000000000,0.276977737652069 -0.000000000000000,0.000024000000000,0.000160000000000,0.000150000000000,0.001811000000000,0.000777000000000,0.003271000000000,1.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1069.000000000000000,202.000000000000000,121.000000000000000,0.139609449101900,0.165271225439012,121.000000000000000,0.244601415643369 -0.000000000000000,0.000018000000000,0.000179000000000,0.000151000000000,0.001532000000000,0.000737000000000,0.002693000000000,0.000000000000000,97.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,912.000000000000000,203.000000000000000,121.000000000000000,0.147947477270869,0.179555832175793,121.000000000000000,0.265742648149137 -0.000000000000000,0.000019000000000,0.000177000000000,0.000125000000000,0.001512000000000,0.000717000000000,0.002588000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,911.000000000000000,212.000000000000000,121.000000000000000,0.147575394987053,0.165266294276773,121.000000000000000,0.244594112073245 -0.000000000000000,0.000016000000000,0.000106000000000,0.000137000000000,0.001490000000000,0.000826000000000,0.002618000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,915.000000000000000,203.000000000000000,121.000000000000000,0.154152939014589,0.159181033056470,121.000000000000000,0.235587925595243 -0.000000000000000,0.000013000000000,0.000177000000000,0.000117000000000,0.001355000000000,0.000751000000000,0.002448000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,921.000000000000000,192.000000000000000,121.000000000000000,0.150692609588339,0.183809895950044,121.000000000000000,0.272038654130109 -0.000000000000000,0.000023000000000,0.000221000000000,0.000167000000000,0.001790000000000,0.000948000000000,0.003199000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,932.000000000000000,170.000000000000000,121.000000000000000,0.149963553230709,0.203273297272569,121.000000000000000,0.300844465407444 -0.000000000000000,0.000026000000000,0.000151000000000,0.000122000000000,0.001357000000000,0.000723000000000,0.002422000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,961.000000000000000,168.000000000000000,121.000000000000000,0.142178288778563,0.151033799800819,121.000000000000000,0.223530034583352 -0.000000000000000,0.000018000000000,0.000155000000000,0.000123000000000,0.001394000000000,0.000766000000000,0.002492000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,986.000000000000000,182.000000000000000,121.000000000000000,0.141207634148801,0.172667793318101,121.000000000000000,0.255548330024774 -0.000000000000000,0.000018000000000,0.000174000000000,0.000143000000000,0.001389000000000,0.000790000000000,0.002550000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1023.000000000000000,171.000000000000000,121.000000000000000,0.140177814193211,0.162740001476768,121.000000000000000,0.240855214879131 -0.000000000000000,0.000021000000000,0.000173000000000,0.000122000000000,0.001280000000000,0.000796000000000,0.002581000000000,1.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1049.000000000000000,171.000000000000000,121.000000000000000,0.138041804635574,0.175894893269503,121.000000000000000,0.260324460535807 -0.000000000000000,0.000040000000000,0.000240000000000,0.000156000000000,0.001610000000000,0.000905000000000,0.003078000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,887.000000000000000,181.000000000000000,121.000000000000000,0.128640393991057,0.132619727567557,121.000000000000000,0.196277204924269 -0.000000000000000,0.000016000000000,0.000181000000000,0.000117000000000,0.001424000000000,0.000760000000000,0.002543000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,886.000000000000000,172.000000000000000,121.000000000000000,0.138352531751683,0.243902625004102,121.000000000000000,0.360975895470416 -0.000000000000000,0.000020000000000,0.000178000000000,0.000131000000000,0.001344000000000,0.000965000000000,0.002674000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,904.000000000000000,177.000000000000000,121.000000000000000,0.132849298892330,0.165943140041726,121.000000000000000,0.245595863686171 -0.000000000000000,0.000018000000000,0.000129000000000,0.000145000000000,0.001297000000000,0.000878000000000,0.002506000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,916.000000000000000,164.000000000000000,121.000000000000000,0.139100399764650,0.179464095411716,121.000000000000000,0.265606862397320 -0.000000000000000,0.000015000000000,0.000175000000000,0.000119000000000,0.001188000000000,0.000717000000000,0.002249000000000,0.000000000000000,116.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,926.000000000000000,158.000000000000000,121.000000000000000,0.124508577433483,0.232688205210390,121.000000000000000,0.344378545000118 -0.000000000000000,0.000041000000000,0.000173000000000,0.000189000000000,0.001590000000000,0.000722000000000,0.002820000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,950.000000000000000,167.000000000000000,121.000000000000000,0.124364211160562,0.198989442345874,121.000000000000000,0.294504385287040 -0.000000000000000,0.000022000000000,0.000180000000000,0.000121000000000,0.001454000000000,0.000762000000000,0.002586000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,981.000000000000000,174.000000000000000,121.000000000000000,0.121986273502660,0.181985786779231,121.000000000000000,0.269338961458690 -0.000000000000000,0.000022000000000,0.000175000000000,0.000128000000000,0.001283000000000,0.000822000000000,0.002468000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1006.000000000000000,154.000000000000000,121.000000000000000,0.120933033868538,0.208757551950541,121.000000000000000,0.308961183186222 -0.000000000000000,0.000026000000000,0.000175000000000,0.000143000000000,0.001286000000000,0.000813000000000,0.002485000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1029.000000000000000,160.000000000000000,121.000000000000000,0.109269904153490,0.130322654376541,121.000000000000000,0.192877532026941 -0.000000000000000,0.000023000000000,0.000175000000000,0.000120000000000,0.001254000000000,0.000637000000000,0.002411000000000,1.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1040.000000000000000,160.000000000000000,121.000000000000000,0.126897062957379,0.186841162125259,121.000000000000000,0.276524916304396 -0.000000000000000,0.000021000000000,0.000140000000000,0.000122000000000,0.001471000000000,0.000691000000000,0.002520000000000,0.000000000000000,113.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,891.000000000000000,190.000000000000000,121.000000000000000,0.112694197899670,0.185521960041402,121.000000000000000,0.274572512797542 -0.000000000000000,0.000020000000000,0.000176000000000,0.000199000000000,0.001263000000000,0.000879000000000,0.002581000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,888.000000000000000,161.000000000000000,121.000000000000000,0.099793871260750,0.108940668612828,121.000000000000000,0.161232198827340 -0.000000000000000,0.000018000000000,0.000103000000000,0.000137000000000,0.001309000000000,0.000726000000000,0.002333000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,901.000000000000000,171.000000000000000,121.000000000000000,0.091727983876207,0.161347683449736,121.000000000000000,0.238794571957605 -0.000000000000000,0.000018000000000,0.000175000000000,0.000143000000000,0.001336000000000,0.000860000000000,0.002571000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,909.000000000000000,175.000000000000000,121.000000000000000,0.124196463571817,0.147059251648374,121.000000000000000,0.217647703825064 -0.000000000000000,0.000019000000000,0.000174000000000,0.000125000000000,0.001265000000000,0.000845000000000,0.002464000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,911.000000000000000,175.000000000000000,121.000000000000000,0.114265472855587,0.148521989180687,121.000000000000000,0.219812542662230 -0.000000000000000,0.000030000000000,0.000158000000000,0.000151000000000,0.001613000000000,0.000756000000000,0.002826000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,943.000000000000000,170.000000000000000,121.000000000000000,0.092242007337942,0.147927216635033,121.000000000000000,0.218932272923301 -0.000000000000000,0.000017000000000,0.000106000000000,0.000120000000000,0.001308000000000,0.001030000000000,0.002622000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,970.000000000000000,159.000000000000000,121.000000000000000,0.106941604326635,0.142972503313410,121.000000000000000,0.211599311615969 -0.000000000000000,0.000021000000000,0.000127000000000,0.000130000000000,0.001305000000000,0.000748000000000,0.002368000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,989.000000000000000,164.000000000000000,121.000000000000000,0.114683633251297,0.167145956283516,121.000000000000000,0.247376014134327 -0.000000000000000,0.000023000000000,0.000135000000000,0.000297000000000,0.001353000000000,0.000968000000000,0.002824000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1014.000000000000000,170.000000000000000,121.000000000000000,0.103049615014965,0.141054167934770,121.000000000000000,0.208760168771737 -0.000000000000000,0.000020000000000,0.000101000000000,0.000125000000000,0.001114000000000,0.000766000000000,0.002163000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1033.000000000000000,149.000000000000000,121.000000000000000,0.088395574941732,0.099895628586074,121.000000000000000,0.147845538218435 -0.000000000000000,0.000023000000000,0.000190000000000,0.000110000000000,0.001226000000000,0.000774000000000,0.002371000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1048.000000000000000,162.000000000000000,121.000000000000000,0.098469632616480,0.121321004607324,121.000000000000000,0.179555087237014 -0.000000000000000,0.000022000000000,0.000180000000000,0.000138000000000,0.001374000000000,0.001109000000000,0.002867000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1058.000000000000000,162.000000000000000,121.000000000000000,0.106165831669812,0.125397650867987,120.000000000000000,0.185588518499696 -0.000000000000000,0.000022000000000,0.000177000000000,0.000138000000000,0.001328000000000,0.000617000000000,0.002320000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1063.000000000000000,154.000000000000000,121.000000000000000,0.100439787680905,0.214221605374360,121.000000000000000,0.317047979072175 -0.000000000000000,0.000019000000000,0.000114000000000,0.000131000000000,0.001262000000000,0.000730000000000,0.002294000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1073.000000000000000,151.000000000000000,121.000000000000000,0.101286833254115,0.171921771357668,121.000000000000000,0.254444227342640 -0.000000000000000,0.000018000000000,0.000111000000000,0.000120000000000,0.001321000000000,0.000814000000000,0.002422000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1075.000000000000000,159.000000000000000,121.000000000000000,0.100562747826060,0.189141833234101,121.000000000000000,0.279929921566071 -0.000000000000000,0.000020000000000,0.000137000000000,0.000115000000000,0.001291000000000,0.000697000000000,0.002305000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1102.000000000000000,170.000000000000000,121.000000000000000,0.108513981039663,0.171230581801412,121.000000000000000,0.253421272631674 -0.000000000000000,0.000023000000000,0.000142000000000,0.000126000000000,0.001300000000000,0.000836000000000,0.002476000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1133.000000000000000,146.000000000000000,121.000000000000000,0.093525447667265,0.136448459114485,121.000000000000000,0.201943713921807 -0.000000000000000,0.000018000000000,0.000175000000000,0.000137000000000,0.001338000000000,0.000746000000000,0.002454000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1153.000000000000000,167.000000000000000,121.000000000000000,0.098830315127647,0.135984610426414,121.000000000000000,0.201257228873912 -0.000000000000000,0.000016000000000,0.000153000000000,0.000133000000000,0.001342000000000,0.000846000000000,0.002529000000000,0.000000000000000,115.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1169.000000000000000,168.000000000000000,121.000000000000000,0.104911664860530,0.116528427363267,121.000000000000000,0.172462069689336 -0.000000000000000,0.000016000000000,0.000177000000000,0.000153000000000,0.001420000000000,0.001057000000000,0.002862000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1189.000000000000000,171.000000000000000,121.000000000000000,0.112357270101045,0.155883824635645,121.000000000000000,0.230708054062211 -0.000000000000000,0.000019000000000,0.000183000000000,0.000118000000000,0.001173000000000,0.000692000000000,0.002218000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1205.000000000000000,160.000000000000000,121.000000000000000,0.114134537418471,0.211839504506888,121.000000000000000,0.313522477539393 -0.000000000000000,0.000022000000000,0.000144000000000,0.000340000000000,0.002673000000000,0.001050000000000,0.004300000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1210.000000000000000,169.000000000000000,121.000000000000000,0.118247530316238,0.220707314595291,121.000000000000000,0.326646841420566 -0.000000000000000,0.000021000000000,0.000121000000000,0.000119000000000,0.001312000000000,0.000708000000000,0.002323000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1221.000000000000000,159.000000000000000,121.000000000000000,0.108077994964789,0.189119078021565,121.000000000000000,0.279896234164773 -0.000000000000000,0.000022000000000,0.000131000000000,0.000170000000000,0.001575000000000,0.000930000000000,0.002873000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1227.000000000000000,161.000000000000000,121.000000000000000,0.111392372838571,0.157100432720142,121.000000000000000,0.232508649452340 -0.000000000000000,0.000021000000000,0.000129000000000,0.000146000000000,0.001357000000000,0.001069000000000,0.002758000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1238.000000000000000,169.000000000000000,121.000000000000000,0.115843692072703,0.148606734789863,121.000000000000000,0.219937966947781 -0.000000000000000,0.000018000000000,0.000196000000000,0.000246000000000,0.003021000000000,0.001245000000000,0.004778000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1237.000000000000000,170.000000000000000,121.000000000000000,0.110486981424295,0.140524548316829,121.000000000000000,0.207976323848749 -0.000000000000000,0.000019000000000,0.000176000000000,0.000120000000000,0.001319000000000,0.000781000000000,0.002451000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1234.000000000000000,166.000000000000000,121.000000000000000,0.116858932300554,0.142202739311708,121.000000000000000,0.210460043128204 -0.000000000000000,0.000023000000000,0.000194000000000,0.000117000000000,0.001352000000000,0.000677000000000,0.002411000000000,0.000000000000000,121.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1229.000000000000000,165.000000000000000,121.000000000000000,0.110055898076008,0.160160155663640,121.000000000000000,0.237037039832150 -0.000000000000000,0.000019000000000,0.000128000000000,0.000129000000000,0.001375000000000,0.000783000000000,0.002473000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1230.000000000000000,170.000000000000000,121.000000000000000,0.126041915882071,0.160651736154074,121.000000000000000,0.237764591667073 -0.000000000000000,0.000024000000000,0.000199000000000,0.000203000000000,0.001799000000000,0.000878000000000,0.003158000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1227.000000000000000,182.000000000000000,121.000000000000000,0.131395777815393,0.222014190834195,121.000000000000000,0.328581023909914 -0.000000000000000,0.000019000000000,0.000103000000000,0.000125000000000,0.001415000000000,0.000879000000000,0.002580000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1227.000000000000000,183.000000000000000,121.000000000000000,0.135634727713905,0.187089754575309,121.000000000000000,0.276892849444298 -0.000000000000000,0.000017000000000,0.000101000000000,0.000119000000000,0.001263000000000,0.000774000000000,0.002307000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1226.000000000000000,171.000000000000000,121.000000000000000,0.140713971719655,0.131521683676958,121.000000000000000,0.194652084756127 -0.000000000000000,0.000016000000000,0.000127000000000,0.000147000000000,0.001449000000000,0.000744000000000,0.002523000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1225.000000000000000,178.000000000000000,121.000000000000000,0.139061294677762,0.203192935815326,121.000000000000000,0.300725561264080 -0.000000000000000,0.000018000000000,0.000191000000000,0.000120000000000,0.001241000000000,0.000897000000000,0.002515000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1221.000000000000000,165.000000000000000,121.000000000000000,0.137698280788293,0.173674353597993,121.000000000000000,0.257038030883200 -0.000000000000000,0.000018000000000,0.000177000000000,0.000127000000000,0.001350000000000,0.000790000000000,0.002651000000000,1.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1209.000000000000000,165.000000000000000,121.000000000000000,0.156706447381789,0.199509549579289,121.000000000000000,0.295274141143093 -0.000000000000000,0.000016000000000,0.000153000000000,0.000147000000000,0.001501000000000,0.000734000000000,0.002643000000000,0.000000000000000,112.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1046.000000000000000,206.000000000000000,121.000000000000000,0.145254964747455,0.192623491876607,121.000000000000000,0.285082754555528 -0.000000000000000,0.000017000000000,0.000175000000000,0.000117000000000,0.001356000000000,0.000838000000000,0.002539000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1044.000000000000000,191.000000000000000,121.000000000000000,0.154344725976771,0.284210388757305,121.000000000000000,0.420631380425634 -0.000000000000000,0.000021000000000,0.000118000000000,0.000127000000000,0.001456000000000,0.000725000000000,0.002492000000000,0.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1039.000000000000000,193.000000000000000,121.000000000000000,0.154361389589804,0.236960337646421,121.000000000000000,0.350701313890299 -0.000000000000000,0.000018000000000,0.000108000000000,0.000128000000000,0.001548000000000,0.000868000000000,0.002721000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1036.000000000000000,190.000000000000000,121.000000000000000,0.144847037730729,0.155773166896081,121.000000000000000,0.230544292351477 -0.000000000000000,0.000018000000000,0.000129000000000,0.000124000000000,0.001383000000000,0.000975000000000,0.002669000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1027.000000000000000,183.000000000000000,121.000000000000000,0.145841805810321,0.158516249676071,121.000000000000000,0.234604041193658 -0.000000000000000,0.000028000000000,0.000216000000000,0.000131000000000,0.001615000000000,0.000765000000000,0.002878000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1020.000000000000000,192.000000000000000,121.000000000000000,0.144426676201549,0.156437471874113,121.000000000000000,0.231527443868863 -0.000000000000000,0.000021000000000,0.000153000000000,0.000120000000000,0.001406000000000,0.000771000000000,0.002509000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1015.000000000000000,188.000000000000000,121.000000000000000,0.147869059454709,0.168692675134760,120.000000000000000,0.249665165294811 -0.000000000000000,0.000021000000000,0.000170000000000,0.000115000000000,0.001425000000000,0.000608000000000,0.002395000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1012.000000000000000,187.000000000000000,121.000000000000000,0.168987279193652,0.289264692226178,121.000000000000000,0.428111727272626 -0.000000000000000,0.000017000000000,0.000135000000000,0.000127000000000,0.001615000000000,0.000791000000000,0.002734000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1011.000000000000000,192.000000000000000,121.000000000000000,0.170578883496370,0.166353065557405,121.000000000000000,0.246202540171952 -0.000000000000000,0.000019000000000,0.000178000000000,0.000136000000000,0.001520000000000,0.000741000000000,0.002636000000000,0.000000000000000,118.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,1005.000000000000000,203.000000000000000,121.000000000000000,0.156640038600278,0.207055055847171,121.000000000000000,0.306441476765396 -0.000000000000000,0.000033000000000,0.000177000000000,0.000135000000000,0.001641000000000,0.000861000000000,0.003288000000000,1.000000000000000,120.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,999.000000000000000,186.000000000000000,121.000000000000000,0.143274685502394,0.179257874186524,121.000000000000000,0.265301654036128 -0.000000000000000,0.000015000000000,0.000129000000000,0.000142000000000,0.001443000000000,0.000740000000000,0.002555000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,821.000000000000000,202.000000000000000,121.000000000000000,0.156881076812533,0.218447877056405,121.000000000000000,0.323302867722382 -0.000000000000000,0.000036000000000,0.000177000000000,0.000151000000000,0.001530000000000,0.000725000000000,0.002741000000000,0.000000000000000,117.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,820.000000000000000,168.000000000000000,121.000000000000000,0.155951030020751,0.213023655758012,121.000000000000000,0.315275031106667 -0.000000000000000,0.000030000000000,0.000196000000000,0.000128000000000,0.001426000000000,0.000831000000000,0.002660000000000,0.000000000000000,119.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,-1.000000000000000,816.000000000000000 \ No newline at end of file diff --git a/CPU_version/svo/test/data/.gitignore b/CPU_version/svo/test/data/.gitignore deleted file mode 100644 index cf57c3b..0000000 --- a/CPU_version/svo/test/data/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -.gitignore -!.gitignore \ No newline at end of file diff --git a/CPU_version/svo/test/results/.gitignore b/CPU_version/svo/test/results/.gitignore deleted file mode 100644 index cf57c3b..0000000 --- a/CPU_version/svo/test/results/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -.gitignore -!.gitignore \ No newline at end of file diff --git a/CPU_version/svo/test/test_depth_filter.cpp b/CPU_version/svo/test/test_depth_filter.cpp deleted file mode 100644 index 4d22493..0000000 --- a/CPU_version/svo/test/test_depth_filter.cpp +++ /dev/null @@ -1,206 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "test_utils.h" - -namespace { - -struct ConvergedSeed { - int x_, y_; - double depth_, error_; - ConvergedSeed(int x, int y, double depth, double error) : - x_(x), y_(y), depth_(depth), error_(error) - {} -}; - -/// DepthFilter Test-Fixture -class DepthFilterTest { - public: - DepthFilterTest(); - virtual ~DepthFilterTest(); - void depthFilterCb(svo::Point* point, double depth_sigma2); - void testReconstruction(std::string dataset_dir, std::string experiment_name); - - std::list results_; - std::vector errors_; - size_t n_converged_seeds_; - vk::PinholeCamera* cam_; - svo::DepthFilter* depth_filter_; - svo::FramePtr frame_ref_; - svo::FramePtr frame_cur_; - cv::Mat depth_ref_; -}; - -DepthFilterTest::DepthFilterTest() : - n_converged_seeds_(0), - cam_(new vk::PinholeCamera(752, 480, 315.5, 315.5, 376.0, 240.0)), - depth_filter_(NULL) -{ - errors_.reserve(1000); -} - -DepthFilterTest::~DepthFilterTest() -{ - delete cam_; -} - -void DepthFilterTest::depthFilterCb(svo::Point* point, double depth_sigma2) -{ - double depth = (frame_ref_->pos() - point->pos_).norm(); - double error = fabs(depth - depth_ref_.at(point->obs_.front()->px[1], - point->obs_.front()->px[0])); - results_.push_back(ConvergedSeed( - point->obs_.front()->px[0], point->obs_.front()->px[1], depth, error)); - errors_.push_back(error); - delete point->obs_.front(); - delete point; - ++n_converged_seeds_; -} - -void DepthFilterTest::testReconstruction( - std::string dataset_dir, - std::string experiment_name) -{ - vk::FileReader sequence_file_reader(dataset_dir+"/trajectory.txt"); - std::vector sequence; - sequence_file_reader.skipComments(); - if(!sequence_file_reader.next()) - std::runtime_error("Failed to open sequence file"); - sequence_file_reader.readAllEntries(sequence); - std::cout << "RUN EXPERIMENT: read " << sequence.size() << " dataset entries." << std::endl; - std::vector::iterator it = sequence.begin(); - vk::Timer t; - std::list n_converged_per_iteration; - - svo::feature_detection::DetectorPtr feature_detector( - new svo::feature_detection::FastDetector( - cam_->width(), cam_->height(), svo::Config::gridSize(), svo::Config::nPyrLevels())); - svo::DepthFilter::callback_t depth_filter_cb = boost::bind(&DepthFilterTest::depthFilterCb, this, _1, _2); - depth_filter_ = new svo::DepthFilter(feature_detector, depth_filter_cb); - depth_filter_->options_.verbose = true; - - for(int i=0; it != sequence.end() && i<20; ++it, ++i) - { - std::string img_name(dataset_dir+"/img/" + (*it).image_name_ + "_0.png"); - printf("reading image: '%s'\n", img_name.c_str()); - cv::Mat img(cv::imread(img_name, 0)); - assert(!img.empty()); - - Sophus::SE3 T_w_f(it->q_, it->t_); - if(i == 0) - { - // create reference frame and load ground truth depthmap - frame_ref_ = boost::make_shared(cam_, img, 0.0); - frame_ref_->T_f_w_ = T_w_f.inverse(); - depth_filter_->addKeyframe(frame_ref_, 2, 0.5); - vk::blender_utils::loadBlenderDepthmap(dataset_dir+"/depth/" + (*it).image_name_ + "_0.depth", *cam_, depth_ref_); - continue; - } - - n_converged_seeds_ = 0; - frame_cur_ = boost::make_shared(cam_, img, 0.0); - frame_cur_->T_f_w_ = T_w_f.inverse(); - depth_filter_->addFrame(frame_cur_); - n_converged_per_iteration.push_back(n_converged_seeds_); - } - printf("Experiment '%s' took %f ms\n", experiment_name.c_str(), t.stop()*1000); - - // compute mean, median and variance of error in converged area - { - printf("# converged: \t %zu (ref: 287)\n", errors_.size()); - double sum_error = 0; - std::for_each(errors_.begin(), errors_.end(), [&](double& e){sum_error+=e;}); - printf("mean error: \t %f cm (ref: 0.080357)\n", sum_error*100/errors_.size()); - std::vector::iterator it = errors_.begin()+0.5*errors_.size(); - std::nth_element(errors_.begin(), it, errors_.end()); - printf("50-percentile: \t %f cm (ref: 0.062042)\n", *it*100); - it = errors_.begin()+0.8*errors_.size(); - std::nth_element(errors_.begin(), it, errors_.end()); - printf("80-percentile: \t %f cm (ref: 0.124526)\n", *it*100); - it = errors_.begin()+0.95*errors_.size(); - std::nth_element(errors_.begin(), it, errors_.end()); - printf("95-percentile: \t %f cm (ref: 0.200417)\n", *it*100); - } - - // trace error - std::string trace_dir(svo::test_utils::getTraceDir()); - std::string trace_name(trace_dir + "/depth_filter_" + experiment_name + ".txt"); - std::ofstream ofs(trace_name.c_str()); - for(std::list::iterator i=results_.begin(); i!=results_.end(); ++i) - ofs << i->x_ << ", " << i->y_ << ", " << fabs(i->error_) << std::endl; - ofs.close(); - - // trace convergence rate - trace_name = trace_dir + "/depth_filter_" + experiment_name + "_convergence.txt"; - ofs.open(trace_name.c_str()); - for(std::list::iterator it=n_converged_per_iteration.begin(); - it!=n_converged_per_iteration.end(); ++it) - ofs << *it << std::endl; - ofs.close(); - - // write ply file for pointcloud visualization in Meshlab - trace_name = trace_dir + "/depth_filter_" + experiment_name + ".ply"; - ofs.open(trace_name.c_str()); - ofs << "ply" << std::endl - << "format ascii 1.0" << std::endl - << "element vertex " << results_.size() << std::endl - << "property float x" << std::endl - << "property float y" << std::endl - << "property float z" << std::endl - << "property uchar blue" << std::endl - << "property uchar green" << std::endl - << "property uchar red" << std::endl - << "end_header" << std::endl; - - for(std::list::iterator i=results_.begin(); i!=results_.end(); ++i) - { - cv::Vec3b c = frame_ref_->img_pyr_[0].at(i->y_, i->x_); - Eigen::Vector3d p = cam_->cam2world(i->x_, i->y_)*i->depth_; - ofs << p[0] << " " << p[1] << " " << p[2] << " " - << (int) c[0] << " " << (int) c[1] << " " << (int) c[2] << std::endl; - } -} - -} // namespace - -int main(int argc, char** argv) -{ - DepthFilterTest test; - std::string dataset_dir(svo::test_utils::getDatasetDir() + "/sin2_tex2_h1_v8_d"); - std::string experiment_name("sin2_tex2_h1_v8_d"); - test.testReconstruction(dataset_dir, experiment_name); - return 0; -} diff --git a/CPU_version/svo/test/test_feature_alignment.cpp b/CPU_version/svo/test/test_feature_alignment.cpp deleted file mode 100644 index dac8911..0000000 --- a/CPU_version/svo/test/test_feature_alignment.cpp +++ /dev/null @@ -1,124 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include "test_utils.h" -#if __ARM_NEON__ -#include -#endif - -using namespace Eigen; - -void generateRefPatchNoWarpInterpolate(const cv::Mat& img, const Vector2d& px, - cv::Mat& ref_patch_with_border) -{ - // compute interpolation weights - const int u_r = floor(px[0]); - const int v_r = floor(px[1]); - const float subpix_u = px[0]-u_r; - const float subpix_v = px[1]-v_r; - const float wTL = (1.0-subpix_u)*(1.0-subpix_v); - const float wTR = subpix_u * (1.0-subpix_v); - const float wBL = (1.0-subpix_u)*subpix_v; - const float wBR = subpix_u * subpix_v; - - // loop through search_patch, interpolate - ref_patch_with_border = cv::Mat(10, 10, CV_8UC1); - uint8_t* patch_ptr = ref_patch_with_border.data; - const int stride = img.step.p[0]; - for(int y=0; y<10; ++y) - { - uint8_t* img_ptr = (uint8_t*) img.data + (v_r+y-4-1)*stride + u_r-4-1; - for(int x=0; x<10; ++x, ++patch_ptr, ++img_ptr) - *patch_ptr = wTL*img_ptr[0] + wTR*img_ptr[1] + wBL*img_ptr[stride] + wBR*img_ptr[stride+1]; - } -} - -int main(int argc, char **argv) -{ - - std::string img_name(svo::test_utils::getDatasetDir() + "/sin2_tex2_h1_v8_d/img/frame_000002_0.png"); - printf("Loading image '%s'\n", img_name.c_str()); - cv::Mat img(cv::imread(img_name, 0)); - assert(img.type() == CV_8UC1); - - // TODO: test on corner/gradient features! - Vector2d px_true(130.2,120.3); - - // create reference patch with border - cv::Mat ref_patch_with_border; - generateRefPatchNoWarpInterpolate(img, px_true, ref_patch_with_border); - - // create reference patch, aligned - uint8_t* ref_patch = vk::aligned_mem::aligned_alloc(64, 16); - uint8_t* ref_patch_ptr = ref_patch; - for(int y=1; y<9; ++y) - { - uint8_t* ref_patch_border_ptr = ref_patch_with_border.data + y*10 + 1; - for(int x=0; x<8; ++x, ++ref_patch_border_ptr, ++ref_patch_ptr) - *ref_patch_ptr = *ref_patch_border_ptr; - } - - Vector2d px_est, px_error(-1.1, -0.8); - double h_inv; - vk::Timer t; - for(int i=0; i<1000; ++i) - { - px_est = px_true-px_error; - Vector2f dir = px_error.normalized().cast(); - svo::feature_alignment::align1D(img, dir, ref_patch_with_border.data, ref_patch, 3, px_est, h_inv); - } - Vector2d e = px_est-px_true; - printf("1000Xalign 1D took %fms, error = %fpx \t (ref i7-W520: 1.982000ms, 0.000033px) \n", t.stop()*1000, e.norm()); - - t.start(); - for(int i=0; i<1000; ++i) - { - px_est = px_true-px_error; - svo::feature_alignment::align2D(img, ref_patch_with_border.data, ref_patch, 3, px_est, true); - } - e = px_est-px_true; - printf("1000Xalign 2D took %fms, error = %fpx \t (ref i7-W520: 2.306000ms, 0.015102px)\n", t.stop()*1000, e.norm()); - -#ifdef __SSE2__ - // Note, this KLT implementation is not invariant to illuminatino changes! - t.start(); - for(int i=0; i<1000; ++i) - { - px_est = px_true-px_error; - svo::feature_alignment::align2D_SSE2(img, ref_patch_with_border.data, ref_patch, 3, px_est); - } - e = px_est-px_true; - printf("1000Xalign 2D SSE2 %fms, error = %fpx \t (ref i7-W520: 0.460000ms, 0.021881px)\n", t.stop()*1000, e.norm()); -#endif - -#ifdef __ARM_NEON__ - t.start(); - for(int i=0; i<1000; ++i) - { - px_est = px_true-px_error; - svo::feature_alignment::align2D_NEON(img, ref_patch_with_border.data, ref_patch, 3, px_est); - } - e = px_est-px_true; - printf("1000Xalign 2D NEON %fms, error = %fpx \t (ref Odroid-U2: ?, ?)\n", t.stop()*1000, e.norm()); -#endif - - return 0; -} diff --git a/CPU_version/svo/test/test_feature_detection.cpp b/CPU_version/svo/test/test_feature_detection.cpp deleted file mode 100644 index 3ba2b2f..0000000 --- a/CPU_version/svo/test/test_feature_detection.cpp +++ /dev/null @@ -1,74 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "test_utils.h" - -namespace { - -using namespace Eigen; -using namespace std; - -void testCornerDetector() -{ - std::string img_name(svo::test_utils::getDatasetDir() + "/sin2_tex2_h1_v8_d/img/frame_000002_0.png"); - printf("Loading image '%s'\n", img_name.c_str()); - cv::Mat img(cv::imread(img_name, 0)); - assert(img.type() == CV_8UC1 && !img.empty()); - - vk::AbstractCamera* cam = new vk::ATANCamera(752, 480, 0.511496, 0.802603, 0.530199, 0.496011, 0.934092); - svo::FramePtr frame(new svo::Frame(cam, img, 0.0)); - - // Corner detection - vk::Timer t; - svo::Features fts; - svo::feature_detection::FastDetector fast_detector( - img.cols, img.rows, svo::Config::gridSize(), svo::Config::nPyrLevels()); - for(int i=0; i<100; ++i) - { - fast_detector.detect(frame.get(), frame->img_pyr_, svo::Config::triangMinCornerScore(), fts); - } - printf("Fast corner detection took %f ms, %zu corners detected (ref i7-W520: 7.166360ms, 40000)\n", t.stop()*10, fts.size()); - printf("Note, in this case, feature detection also contains the cam2world projection of the feature.\n"); - cv::Mat img_rgb = cv::Mat(img.size(), CV_8UC3); - cv::cvtColor(img, img_rgb, CV_GRAY2RGB); - std::for_each(fts.begin(), fts.end(), [&](svo::Feature* i){ - cv::circle(img_rgb, cv::Point2f(i->px[0], i->px[1]), 4*(i->level+1), cv::Scalar(0,255,0), 1); - }); - cv::imshow("ref_img", img_rgb); - cv::waitKey(0); - - std::for_each(fts.begin(), fts.end(), [&](svo::Feature* i){ delete i; }); -} - -} // namespace - - -int main(int argc, char **argv) -{ - testCornerDetector(); - return 0; -} diff --git a/CPU_version/svo/test/test_matcher.cpp b/CPU_version/svo/test/test_matcher.cpp deleted file mode 100644 index 0b65cb9..0000000 --- a/CPU_version/svo/test/test_matcher.cpp +++ /dev/null @@ -1,200 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include "test_utils.h" - -namespace { - -/// Matcher Test-Fixture -class MatcherTest { - public: - MatcherTest() - { - cam_ = new vk::PinholeCamera(752, 480, 315.5, 315.5, 376.0, 240.0); - - // load images - std::string dataset_dir(svo::test_utils::getDatasetDir() + "/sin2_tex2_h1_v8_d"); - std::string img_name(dataset_dir+"/img/frame_000002_0.png"); - printf("Loading image '%s'\n", img_name.c_str()); - cv::Mat img_ref(cv::imread(img_name, 0)); - img_name = std::string(dataset_dir+"/img/frame_000006_0.png"); - printf("Loading image '%s'\n", img_name.c_str()); - cv::Mat img_cur(cv::imread(img_name, 0)); - assert(!img_ref.empty() && !img_cur.empty()); - - // create frame - frame_ref_ = new svo::Frame(cam_, img_ref, 1.0); - frame_cur_ = new svo::Frame(cam_, img_cur, 2.0); - ref_ftr_ = new svo::Feature(frame_ref_, Eigen::Vector2d(300, 260), 0); - - // set poses - Eigen::Vector3d t_w_ref(0.1131, 0.1131, 2.0000); - Eigen::Vector3d t_w_cur(0.5673, 0.5641, 2.0000); - Eigen::Quaterniond q_w_ref(0.0, 0.8227, 0.2149, 0.0); - Eigen::Quaterniond q_w_cur(0.0, 0.8235, 0.2130, 0.0); - frame_ref_->T_f_w_ = Sophus::SE3(q_w_ref, t_w_ref).inverse(); - frame_cur_->T_f_w_ = Sophus::SE3(q_w_cur, t_w_cur).inverse(); - - // load ground-truth depth - vk::blender_utils::loadBlenderDepthmap(dataset_dir+"/depth/frame_000002_0.depth", *cam_, depth_ref_); - } - - virtual ~MatcherTest() - { - delete cam_; - delete frame_ref_; - delete frame_cur_; - delete ref_ftr_; - } - - // Individual tests - void testEpipolarSearchFullImg(); - void testWarpAffine(); - - // Objects declared here can be used by all tests - vk::PinholeCamera* cam_; - svo::Frame* frame_ref_; - svo::Frame* frame_cur_; - svo::Feature* ref_ftr_; - cv::Mat depth_ref_; -}; - -void MatcherTest::testEpipolarSearchFullImg() -{ - svo::Matcher matcher; - cv::Mat depthmap(frame_ref_->cam_->height(), frame_ref_->cam_->width(), CV_32FC1, cv::Scalar(0)); - cv::Mat error_map(depthmap.rows, depthmap.cols, CV_32FC1, cv::Scalar(0)); - cv::Mat mask(depthmap.rows, depthmap.cols, CV_8UC1, cv::Scalar(1)); - double depth_range = 0.8; - size_t n_converged = 0; - double sum_error = 0; - std::vector errors; errors.reserve(depthmap.cols*depthmap.rows); - for(int y=4; y(y, x); - double depth_estimate; - int res = matcher.findEpipolarMatchDirect( - *frame_ref_, *frame_cur_, ftr, depth_gt, fmax(depth_gt-depth_range,0.0), - depth_gt+depth_range, depth_estimate); - if(res) - { - depthmap.at(y,x) = depth_estimate; - error_map.at(y,x) = fabsf(depth_estimate-depth_gt); - ++n_converged; - sum_error += error_map.at(y,x); - errors.push_back(error_map.at(y,x)); - } - else - mask.at(y,x) = 0; - } - } - - // compute mean, median and variance of error in converged area - printf("n converged: \t %zu mm (ref: 216114)\n", n_converged); - printf("mean error: \t %f mm (ref: 0.410084)\n", sum_error*100/n_converged); - std::vector::iterator it = errors.begin()+0.5*errors.size(); - std::nth_element(errors.begin(), it, errors.end()); - printf("50-percentile: \t %f mm (ref: 0.083203)\n", *it*100); - it = errors.begin()+0.8*errors.size(); - std::nth_element(errors.begin(), it, errors.end()); - printf("80-percentile: \t %f mm (ref: 0.161824)\n", *it*100); - it = errors.begin()+0.95*errors.size(); - std::nth_element(errors.begin(), it, errors.end()); - printf("95-percentile: \t %f mm (ref: 0.263539)\n", *it*100); - - // save results to file - std::ofstream output_stream; - std::string trace_dir(svo::test_utils::getTraceDir()); - std::string output_filename(trace_dir + "/depthmap.bin"); - output_stream.open(output_filename.c_str(), std::ios::out | std::ios::binary | std::ios::trunc); - output_stream.write((const char *)depthmap.data, depthmap.rows*depthmap.cols*sizeof(float)); - output_stream.close(); - - output_filename.assign(trace_dir + "/depthmap_error.bin"); - output_stream.open(output_filename.c_str(), std::ios::out | std::ios::binary | std::ios::trunc); - output_stream.write((const char *)error_map.data, error_map.rows*error_map.cols*sizeof(float)); - output_stream.close(); - - output_filename.assign(trace_dir + "/depthmap_mask.bin"); - output_stream.open(output_filename.c_str(), std::ios::out | std::ios::binary | std::ios::trunc); - output_stream.write((const char *)mask.data, mask.rows*mask.cols*sizeof(uint8_t)); - output_stream.close(); -} - -void MatcherTest::testWarpAffine() -{ - const int halfpatch_size = 15; - const int patch_size=halfpatch_size*2; - svo::Matcher matcher; - double depth = 1.0; - - Sophus::SE3 T_cur_ref(frame_cur_->T_f_w_*frame_ref_->T_f_w_.inverse()); - Eigen::Vector2d px_cur(frame_cur_->cam_->world2cam(T_cur_ref*(ref_ftr_->f*depth))); - - // compute reference patch - cv::Mat ref_patch(matcher.halfpatch_size_+1, matcher.halfpatch_size_+1, - CV_8U, matcher.patch_with_border_); - - Eigen::Matrix2d A_cur_ref; - svo::warp::getWarpMatrixAffine( - *cam_, *cam_, ref_ftr_->px, ref_ftr_->f, 1.0, T_cur_ref, ref_ftr_->level, A_cur_ref); - int level_cur = svo::warp::getBestSearchLevel(A_cur_ref, svo::Config::nPyrLevels()-1); - svo::warp::warpAffine( - A_cur_ref, ref_ftr_->frame->img_pyr_[ref_ftr_->level], ref_ftr_->px, - ref_ftr_->level, level_cur, matcher.halfpatch_size_+1, matcher.patch_with_border_); - - // copy current patch - Eigen::Vector2i pxi(px_cur[0]/(1<img_pyr_.at(level_cur)(cv::Range(pxi[1]-halfpatch_size, - pxi[1]+halfpatch_size), - cv::Range(pxi[0]-halfpatch_size, - pxi[0]+halfpatch_size)).copyTo(cur_patch); - - // display results - cv::circle(frame_cur_->img_pyr_[level_cur], - cv::Point2f(pxi[0], pxi[1]), - patch_size, cv::Scalar(255), 2); - cv::circle(frame_ref_->img_pyr_[ref_ftr_->level], - cv::Point2f(ref_ftr_->px[0]/(1<level), ref_ftr_->px[1]/(1<level)), - patch_size, cv::Scalar(255), 2); - cv::imshow("cur_patch", cur_patch); - cv::imshow("ref_patch", ref_patch); - cv::imshow("ref_img", frame_ref_->img_pyr_[ref_ftr_->level]); - cv::imshow("cur_img", frame_cur_->img_pyr_[level_cur]); - cv::waitKey(0); -} - -} // namespace - -int main(int argc, char** argv) -{ - MatcherTest test; - test.testEpipolarSearchFullImg(); -// test.testWarpAffine(); - return 0; -} diff --git a/CPU_version/svo/test/test_pipeline.cpp b/CPU_version/svo/test/test_pipeline.cpp deleted file mode 100644 index ede3b25..0000000 --- a/CPU_version/svo/test/test_pipeline.cpp +++ /dev/null @@ -1,98 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "test_utils.h" - -namespace svo { - -class BenchmarkNode -{ - vk::AbstractCamera* cam_; - svo::FrameHandlerMono* vo_; - -public: - BenchmarkNode(); - ~BenchmarkNode(); - void runFromFolder(); -}; - -BenchmarkNode::BenchmarkNode() -{ - cam_ = new vk::PinholeCamera(752, 480, 315.5, 315.5, 376.0, 240.0); - vo_ = new svo::FrameHandlerMono(cam_); - vo_->start(); -} - -BenchmarkNode::~BenchmarkNode() -{ - delete vo_; - delete cam_; -} - -void BenchmarkNode::runFromFolder() -{ - for(int img_id = 2; img_id < 188; ++img_id) - { - // load image - std::stringstream ss; - ss << svo::test_utils::getDatasetDir() << "/sin2_tex2_h1_v8_d/img/frame_" - << std::setw( 6 ) << std::setfill( '0' ) << img_id << "_0.png"; - if(img_id == 2) - std::cout << "reading image " << ss.str() << std::endl; - cv::Mat img(cv::imread(ss.str().c_str(), 0)); - assert(!img.empty()); - - // process frame - vo_->addImage(img, 0.01*img_id); - - // display tracking quality - if(vo_->lastFrame() != NULL) - { - std::cout << "Frame-Id: " << vo_->lastFrame()->id_ << " \t" - << "#Features: " << vo_->lastNumObservations() << " \t" - << "Proc. Time: " << vo_->lastProcessingTime()*1000 << "ms \n"; - - // access the pose of the camera via vo_->lastFrame()->T_f_w_. - } - } -} - -} // namespace svo - -int main(int argc, char** argv) -{ - { - svo::BenchmarkNode benchmark; - benchmark.runFromFolder(); - } - printf("BenchmarkNode finished.\n"); - return 0; -} - diff --git a/CPU_version/svo/test/test_pose_optimizer.cpp b/CPU_version/svo/test/test_pose_optimizer.cpp deleted file mode 100644 index 59e0b46..0000000 --- a/CPU_version/svo/test/test_pose_optimizer.cpp +++ /dev/null @@ -1,110 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "test_utils.h" - -namespace { - -using namespace svo; -using namespace Eigen; - -/// Pose Optimizer Test-Fixture -class PoseOptimizerTest { - public: - PoseOptimizerTest() - { - cam_ = new vk::PinholeCamera(752, 480, 315.5, 315.5, 376.0, 240.0); - - // load image - std::string dataset_dir(svo::test_utils::getDatasetDir() + "/sin2_tex2_h1_v8_d"); - std::string img_name(dataset_dir+"/img/frame_000002_0.png"); - printf("Loading image '%s'\n", img_name.c_str()); - cv::Mat img(cv::imread(img_name, 0)); - assert(!img.empty()); - - // create frame - frame_.reset(new svo::Frame(cam_, img, 1.0)); - - // set pose - Eigen::Vector3d t_w_ref(0.1131, 0.1131, 2.0000); - Eigen::Quaterniond q_w_ref(0.0, 0.8227, 0.2149, 0.0); - frame_->T_f_w_ = Sophus::SE3(q_w_ref, t_w_ref).inverse(); - - // load ground-truth depth - vk::blender_utils::loadBlenderDepthmap(dataset_dir + "/depth/frame_000002_0.depth", *cam_, depthmap_); - - // detect features - feature_detection::FastDetector detector( - cam_->width(), cam_->height(), Config::gridSize(), Config::nPyrLevels()); - detector.detect(frame_.get(), frame_->img_pyr_, Config::triangMinCornerScore(), frame_->fts_); - size_t n_fts = 0; - std::for_each(frame_->fts_.begin(), frame_->fts_.end(), [&](Feature* i){ - Point* point(new Point(frame_->f2w(i->f*depthmap_.at(i->px[1], i->px[0])), i)); - i->point = point; - ++n_fts; - }); - printf("Added %zu features to frame.\n", n_fts); - } - - virtual ~PoseOptimizerTest() - { - delete cam_; - } - - // Individual tests - void test(const Vector3d& pose_disturbance, double pixel_sigma2); - - // Objects declared here can be used by all tests - vk::PinholeCamera* cam_; - FramePtr frame_; - cv::Mat depthmap_; -}; - -void PoseOptimizerTest::test(const Vector3d& pose_disturbance, double pixel_sigma2) -{ - printf("Add %f px noise to each observation\n", pixel_sigma2); - for(Features::iterator it=frame_->fts_.begin(); it!=frame_->fts_.end(); ++it) - { - (*it)->px += Vector2d(vk::Sample::gaussian(pixel_sigma2), vk::Sample::gaussian(pixel_sigma2)); - (*it)->f = frame_->c2f((*it)->px); - } - frame_->T_f_w_ = frame_->T_f_w_*SE3(Matrix3d::Identity(), pose_disturbance); - double estimated_scale, error_init, error_final; - size_t num_obs; - pose_optimizer::optimizeGaussNewton( - Config::reprojThresh(), 10, true, frame_, - estimated_scale, error_init, error_final, num_obs); -} - -} // namespace - -int main(int argc, char** argv) -{ - PoseOptimizerTest test; - test.test(Eigen::Vector3d(0.2, 0.2, 0.2), 1.0); - return 0; -} diff --git a/CPU_version/svo/test/test_sparse_img_align.cpp b/CPU_version/svo/test/test_sparse_img_align.cpp deleted file mode 100644 index 1312da0..0000000 --- a/CPU_version/svo/test/test_sparse_img_align.cpp +++ /dev/null @@ -1,163 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "test_utils.h" - -namespace { - -/// SparseImgAlign Test-Fixture -class SparseImgAlignTest { - public: - - SparseImgAlignTest(); - virtual ~SparseImgAlignTest(); - void testSequence( - const std::string& dataset_dir, - const std::string& experiment_name, - svo::feature_detection::AbstractDetector* feature_detector); - - vk::PinholeCamera* cam_; - svo::FramePtr frame_ref_; - svo::FramePtr frame_cur_; -}; - -SparseImgAlignTest::SparseImgAlignTest() : - cam_(new vk::PinholeCamera(752, 480, 315.5, 315.5, 376.0, 240.0)) -{} - -SparseImgAlignTest::~SparseImgAlignTest() -{} - -void SparseImgAlignTest::testSequence( - const std::string& dataset_dir, - const std::string& experiment_name, - svo::feature_detection::AbstractDetector* feature_detector) -{ - vk::FileReader sequence_file_reader(dataset_dir+"/trajectory.txt"); - std::vector sequence; - sequence_file_reader.skipComments(); - if(!sequence_file_reader.next()) - std::runtime_error("Failed to open sequence file"); - sequence_file_reader.readAllEntries(sequence); - printf("RUN EXPERIMENT: read %zu dataset entries.\n", sequence.size()); - std::vector::iterator iter = sequence.begin(); - std::list translation_error; - - Sophus::SE3 T_prev_w, T_prevgt_w; - std::string trace_dir(svo::test_utils::getTraceDir()); - std::string trace_name(trace_dir + "/sparse_img_align_" + experiment_name + "_trans_estimate.txt"); - std::ofstream ofs(trace_name.c_str()); - for(int i=0; iter != sequence.end() && i<30; ++iter, ++i) - { - // load img - // IMPORTANT: We need to flip the image because the Povray dataset has a - // negative focal length in y direction which we didn't set. - std::string img_name(dataset_dir+"/img/" + iter->image_name_ + "_0.png"); - cv::Mat img(cv::imread(img_name, 0)); - assert(!img.empty()); - - // load pose - Sophus::SE3 T_w_gt(iter->q_, iter->t_); - Sophus::SE3 T_gt_w = T_w_gt.inverse(); // ground-truth - - if(i==0) - { - // set reference frame - frame_ref_.reset(new svo::Frame(cam_, img, 0.0)); - frame_ref_->T_f_w_ = T_gt_w; - - // load ground-truth depth - cv::Mat depthmap; - vk::blender_utils::loadBlenderDepthmap( - dataset_dir+"/depth/"+iter->image_name_+"_0.depth", *cam_, depthmap); - - // extract features, generate features with 3D points - feature_detector->detect( - frame_ref_.get(), frame_ref_->img_pyr_, svo::Config::triangMinCornerScore(), frame_ref_->fts_); - std::for_each(frame_ref_->fts_.begin(), frame_ref_->fts_.end(), [&](svo::Feature* i) { - Eigen::Vector3d pt_pos_cur = i->f*depthmap.at(i->px[1], i->px[0]); - Eigen::Vector3d pt_pos_w = frame_ref_->T_f_w_.inverse()*pt_pos_cur; - svo::Point* pt = new svo::Point(pt_pos_w, i); - i->point = pt; - }); - - printf("Added %zu 3d pts to the reference frame.\n", frame_ref_->nObs()); - T_prev_w = frame_ref_->T_f_w_; - T_prevgt_w = T_gt_w; - continue; - } - - frame_cur_.reset(new svo::Frame(cam_, img, 0.0)); - //frame_cur_->T_f_w_ = frame_ref_->T_f_w_; // start at reference frame - frame_cur_->T_f_w_ = T_prev_w; // start at last frame - - // run image align - vk::Timer t; - svo::SparseImgAlign img_align(svo::Config::kltMaxLevel(), svo::Config::kltMinLevel(), - 30, svo::SparseImgAlign::GaussNewton, false, false); - img_align.run(frame_ref_, frame_cur_); - - // compute error - Sophus::SE3 T_f_gt = frame_cur_->T_f_w_ * T_gt_w.inverse(); - translation_error.push_back(T_f_gt.translation().norm()); - printf("[%3.i] time = %f ms \t |t| = %f \t translation error = %f\n", - i, t.stop()*1000, (frame_ref_->T_f_w_*T_gt_w.inverse()).translation().norm(), - translation_error.back()); - - // save old pose for next iteration - T_prev_w = frame_cur_->T_f_w_; - T_prevgt_w = T_gt_w; - - ofs << frame_cur_->T_f_w_.inverse().translation().transpose() << " " - << T_gt_w.inverse().translation().transpose() << std::endl; - } - ofs.close(); - - // trace error - trace_name = trace_dir + "/sparse_img_align_" + experiment_name + "_trans_error.txt"; - ofs.open(trace_name.c_str()); - for(std::list::iterator it=translation_error.begin(); it!=translation_error.end(); ++it) - ofs << *it << std::endl; - ofs.close(); -} - -} // namespace - - -int main(int argc, char** argv) -{ - std::string experiment_name("flying_room_1_rig_1_fast_minlev0"); - std::string dataset_dir(svo::test_utils::getDatasetDir() + "/sin2_tex2_h1_v8_d"); - svo::Config::triangMinCornerScore() = 20; - svo::Config::kltMinLevel() = 0; - SparseImgAlignTest test; - svo::feature_detection::FastDetector detector( - test.cam_->width(), test.cam_->height(), svo::Config::gridSize(), svo::Config::nPyrLevels()); - test.testSequence(dataset_dir, experiment_name, &detector); - return 0; -} diff --git a/CPU_version/svo/test/test_utils.h b/CPU_version/svo/test/test_utils.h deleted file mode 100644 index 2759fe0..0000000 --- a/CPU_version/svo/test/test_utils.h +++ /dev/null @@ -1,57 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef TEST_UTILS_H_ -#define TEST_UTILS_H_ - -#include -#include // for getenv -#ifdef SVO_USE_ROS -# include -# include -#endif - -namespace svo { -namespace test_utils { - -std::string getDatasetDir() -{ - const char* env_dir = std::getenv("SVO_DATASET_DIR"); -#ifdef SVO_USE_ROS - std::string dataset_dir(ros::package::getPath("svo")+"/test/data"); - if(env_dir != NULL) - dataset_dir = std::string(env_dir); - return dataset_dir; -#else - return std::string(env_dir); -#endif -} - -std::string getTraceDir() -{ -#ifdef SVO_USE_ROS - std::string default_dir(ros::package::getPath("svo")+"/test/results"); - return vk::getParam("svo/trace_dir", default_dir); -#else - return "/tmp"; -#endif -} - -} // namespace test_utils -} // namespace svo - - -#endif // TEST_UTILS_H_ diff --git a/CPU_version/svo_analysis/.gitignore b/CPU_version/svo_analysis/.gitignore deleted file mode 100644 index 7e99e36..0000000 --- a/CPU_version/svo_analysis/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.pyc \ No newline at end of file diff --git a/CPU_version/svo_analysis/CMakeLists.txt b/CPU_version/svo_analysis/CMakeLists.txt deleted file mode 100644 index 53ea7dc..0000000 --- a/CPU_version/svo_analysis/CMakeLists.txt +++ /dev/null @@ -1,8 +0,0 @@ -cmake_minimum_required(VERSION 2.8.3) -project(svo_analysis) - -find_package(catkin REQUIRED COMPONENTS rospy) -include_directories(${catkin_INCLUDE_DIRS}) - -catkin_python_setup() -#catkin_package(CATKIN_DEPENDS sensor_msgs) \ No newline at end of file diff --git a/CPU_version/svo_analysis/README.md b/CPU_version/svo_analysis/README.md deleted file mode 100644 index b3201b1..0000000 --- a/CPU_version/svo_analysis/README.md +++ /dev/null @@ -1,27 +0,0 @@ -## SVO Analysis - -#### Download Test Data - -Create a folder where you will store all datasets, e.g.: - - mkdir Datasets - -In your `.bashrc` script, create a new environment variable pointing to the dataset folder: - - export SVO_DATASET_DIR=${HOME}/Datasets - -Source your new `.bashrc` script, go to the new dataset folder and download the test data: - - source ~/.bashrc - cd ${SVO_DATASET_DIR} - wget http://rpg.ifi.uzh.ch/datasets/sin2_tex2_h1_v8_d.tar.gz -O - | tar -xz - -#### Run Benchmark - -In the _CMakeLists.txt_ of SVO you need to set the `TRACE` flag to `TRUE` and recompile SVO. -Afterwards run - - rosrun svo_analysis benchmark.py sin2_tex2_h1_v8_d - -The script will create a new folder in `svo_analysis/results/`, run svo on the dataset and save the tracefile in this folder and at the end it will run some scripts to generate plots from the tracefile. - diff --git a/CPU_version/svo_analysis/__init__.py b/CPU_version/svo_analysis/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/CPU_version/svo_analysis/comparisons/speed.yaml b/CPU_version/svo_analysis/comparisons/speed.yaml deleted file mode 100644 index 2f706d4..0000000 --- a/CPU_version/svo_analysis/comparisons/speed.yaml +++ /dev/null @@ -1,14 +0,0 @@ -comparison_name: speed -experiment_sets: -- label: 'old' - experiments: - - 20140415_1028_svo_ros_synthetic_speed_1404150920_plane_straight_speed4 - - 20140415_1028_svo_ros_synthetic_speed_1404150928_plane_straight_speed5 - - 20140415_1028_svo_ros_synthetic_speed_1404150935_plane_straight_speed6 - - 20140415_1028_svo_ros_synthetic_speed_1404150940_plane_straight_speed7 -- label: 'new' - experiments: - - 20140513_0949_svo_ros_synthetic_speed_1404150920_plane_straight_speed4 - - 20140513_0949_svo_ros_synthetic_speed_1404150928_plane_straight_speed5 - - 20140513_0949_svo_ros_synthetic_speed_1404150935_plane_straight_speed6 - - 20140513_0949_svo_ros_synthetic_speed_1404150940_plane_straight_speed7 \ No newline at end of file diff --git a/CPU_version/svo_analysis/comparisons/textures.yaml b/CPU_version/svo_analysis/comparisons/textures.yaml deleted file mode 100644 index 7279f6e..0000000 --- a/CPU_version/svo_analysis/comparisons/textures.yaml +++ /dev/null @@ -1,22 +0,0 @@ -comparison_name: textures -experiment_sets: -- label: 'T1' - experiments: - - 20140516_1449_svo_ros_synthetic_all_str_tex1_h1_v6_d - - 20140516_1449_svo_ros_synthetic_all_str_tex1_h1_v9_d - - 20140516_1449_svo_ros_synthetic_all_str_tex1_h1_v12_d -- label: 'T2' - experiments: - - 20140516_1449_svo_ros_synthetic_all_str_tex2_h1_v6_d - - 20140516_1449_svo_ros_synthetic_all_str_tex2_h1_v9_d - - 20140516_1449_svo_ros_synthetic_all_str_tex2_h1_v12_d -- label: 'T3' - experiments: - - 20140516_1449_svo_ros_synthetic_all_str_tex3_h1_v6_d - - 20140516_1449_svo_ros_synthetic_all_str_tex3_h1_v9_d - - 20140516_1449_svo_ros_synthetic_all_str_tex3_h1_v12_d -# - label: 'T4' -# experiments: -# - 20140516_1449_svo_ros_synthetic_all_str_tex4_h1_v6_d -# - 20140516_1449_svo_ros_synthetic_all_str_tex4_h1_v9_d -# - 20140516_1449_svo_ros_synthetic_all_str_tex4_h1_v12_d \ No newline at end of file diff --git a/CPU_version/svo_analysis/experiments/.gitignore b/CPU_version/svo_analysis/experiments/.gitignore deleted file mode 100644 index 5b74354..0000000 --- a/CPU_version/svo_analysis/experiments/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*.yaml -!.gitignore diff --git a/CPU_version/svo_analysis/package.xml b/CPU_version/svo_analysis/package.xml deleted file mode 100644 index dcc5a62..0000000 --- a/CPU_version/svo_analysis/package.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - svo_analysis - 0.0.1 - - Python scripts to analyse performance of SVO. - - Christian Forster - Christian Forster - BSD - catkin - - rospy - - python-rospkg - python-yaml - rospy - - \ No newline at end of file diff --git a/CPU_version/svo_analysis/results/.gitignore b/CPU_version/svo_analysis/results/.gitignore deleted file mode 100644 index c1aefd2..0000000 --- a/CPU_version/svo_analysis/results/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -.gitignore -!.gitignore diff --git a/CPU_version/svo_analysis/scripts/__init__.py b/CPU_version/svo_analysis/scripts/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/CPU_version/svo_analysis/scripts/benchmark.py b/CPU_version/svo_analysis/scripts/benchmark.py deleted file mode 100755 index a3733ea..0000000 --- a/CPU_version/svo_analysis/scripts/benchmark.py +++ /dev/null @@ -1,111 +0,0 @@ -#!/usr/bin/python -""" -Created on Sat Aug 10 18:21:47 2013 - -@author: Christian Forster -""" - -import os -import yaml -import rospkg -import argparse -import time -import vikit_py.cpu_info as cpu_info -import vikit_py.ros_node as ros_node -import evaluate -import shutil - -def run_experiment(dataset, params): - # load dataset parameters - params['dataset_directory'] = os.path.join(os.environ['SVO_DATASET_DIR'], dataset) - if not os.path.exists(params['dataset_directory']): - raise Exception("Provided dataset folder does not exist.") - dataset_params_file = os.path.join(params['dataset_directory'], 'dataset_params.yaml') - dataset_params = yaml.load(open(dataset_params_file,'r')) - - # load algorithm parameters - algo_params_file = os.path.join(rospkg.RosPack().get_path('svo_ros'), - 'param', params['param_settings']+'.yaml') - algo_params = yaml.load(open(algo_params_file,'r')) - - # combine all parameters - if 'rig_size' not in dataset_params or dataset_params['rig_size'] == 1: - params = dict(params.items() + algo_params.items() + dataset_params['cam0'].items()) - else: - params = dict(params.items() + algo_params.items() + dataset_params.items()) - if 'dataset_is_blender' in dataset_params: - params['dataset_is_blender'] = dataset_params['dataset_is_blender'] - else: - params['dataset_is_blender'] = False - if 'dataset_first_frame' in dataset_params: - params['dataset_first_frame'] = dataset_params['dataset_first_frame'] - else: - params['dataset_first_frame'] = 0 - - # dump experiment params to file and copy the other parameter files: - params_dump_file = os.path.join(params['trace_dir'],'params.yaml') - with open(params_dump_file,'w') as outfile: - outfile.write(yaml.dump(params, default_flow_style=False)) - shutil.copyfile(dataset_params_file, - os.path.join(params['trace_dir'], 'dataset_params.yaml')) - - # copy the groundtruth trajectory to the trace dir for later evaluation - if params['dataset_is_blender']: - shutil.copyfile(os.path.join(params['dataset_directory'], 'trajectory_nominal.txt'), - os.path.join(params['trace_dir'], 'groundtruth_matched.txt')) - else: - shutil.copyfile(os.path.join(params['dataset_directory'], 'groundtruth_matched.txt'), - os.path.join(params['trace_dir'], 'groundtruth_matched.txt')) - - # execute ros node - node = ros_node.RosNode(args.version, args.executable) - node.run(params) - -if __name__=="__main__": - - # parse command line - parser = argparse.ArgumentParser(description=''' - Runs SVO with the dataset and parameters specified in the provided experiment file. - ''') - parser.add_argument('experiment_file', help='experiment file in svo_analysis/experiments folder') - parser.add_argument('--evaluate', help='evaluate tracefile after running SVO', action='store_true') - parser.add_argument('--version', help='version of svo to evaluate', default='svo_ros') - parser.add_argument('--executable', help='the executable to be called', default='benchmark') - args = parser.parse_args() - - # load experiment parameters - args.experiment_file = args.experiment_file.replace('.yaml','') - experiment_params_file = os.path.join(rospkg.RosPack().get_path('svo_analysis'), - 'experiments', args.experiment_file+'.yaml') - if os.path.exists(experiment_params_file): - experiment_params = yaml.load(open(experiment_params_file, 'r')) - else: - print('experiment file does not exist. run with default setttings') - experiment_params = dict({'experiment_label':'default','param_settings':'vo_fast', - 'datasets':list([args.experiment_file])}) - params = dict() - params['experiment_label'] = experiment_params['experiment_label'] - params['param_settings'] = experiment_params['param_settings'] - params['time'] = time.strftime("%Y%m%d_%H%M", time.localtime()) - params['platform'] = cpu_info.get_cpu_info() - params['trace_name'] = 'trace' - - trace_dirs = list() - for dataset in experiment_params['datasets']: - params['experiment_name'] = params['time']+'_'+args.version+'_'+args.experiment_file+'_'+dataset - params['trace_dir'] = os.path.join(rospkg.RosPack().get_path('svo_analysis'), - 'results', params['experiment_name']) - if not os.path.exists(params['trace_dir']): - os.makedirs(params['trace_dir']) - trace_dirs.append(params['trace_dir']) - run_experiment(dataset, params) - - # TODO: check if it is a synthetic dataset - for trace in trace_dirs: - evaluate.evaluate_dataset(trace) - - - - - - diff --git a/CPU_version/svo_analysis/scripts/compare_results.py b/CPU_version/svo_analysis/scripts/compare_results.py deleted file mode 100755 index 5605fe3..0000000 --- a/CPU_version/svo_analysis/scripts/compare_results.py +++ /dev/null @@ -1,150 +0,0 @@ -#!/usr/bin/python - -import os -import sys -import time -import rospkg -import numpy as np -import matplotlib.pyplot as plt -import yaml -import argparse -from matplotlib import rc - -# tell matplotlib to use latex font -rc('font',**{'family':'serif','serif':['Cardo']}) -rc('text', usetex=True) - -from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes -from mpl_toolkits.axes_grid1.inset_locator import mark_inset - -def plot_trajectory(ax, filename, label, color, linewidth): - file = open(filename) - data = file.read() - lines = data.replace(","," ").replace("\t"," ").split("\n") - trajectory = np.array([[v.strip() for v in line.split(" ") if v.strip()!=""] for line in lines if len(line)>0 and line[0]!="#"], dtype=np.float64) - ax.plot(trajectory[:,1], trajectory[:,2], label=label, color=color, linewidth=linewidth) - -def compare_results(experiments, results_dir, comparison_dir, - plot_scale_drift = False): - - # ------------------------------------------------------------------------------ - # position error - fig_poserr = plt.figure(figsize=(8,6)) - ax_poserr_x = fig_poserr.add_subplot(311, ylabel='x-error [m]') - ax_poserr_y = fig_poserr.add_subplot(312, ylabel='y-error [m]') - ax_poserr_z = fig_poserr.add_subplot(313, ylabel='z-error [m]', xlabel='time [s]') - - for exp in experiments: - - # load dataset parameters - params_stream = open(os.path.join(results_dir, exp, 'params.yaml')) - params = yaml.load(params_stream) - - # plot translation error - trans_error = np.loadtxt(os.path.join(results_dir, exp, 'translation_error.txt')) - trans_error[:,0] = trans_error[:,0]-trans_error[0,0] - ax_poserr_x.plot(trans_error[:,0], trans_error[:,1], label=params['experiment_label']) - ax_poserr_y.plot(trans_error[:,0], trans_error[:,2]) - ax_poserr_z.plot(trans_error[:,0], trans_error[:,3]) - - ax_poserr_x.set_xlim([0, trans_error[-1,0]+4]) - ax_poserr_y.set_xlim([0, trans_error[-1,0]+4]) - ax_poserr_z.set_xlim([0, trans_error[-1,0]+4]) - ax_poserr_x.legend(bbox_to_anchor=[0, 0], loc='lower left', ncol=3) - ax_poserr_x.grid() - ax_poserr_y.grid() - ax_poserr_z.grid() - fig_poserr.tight_layout() - fig_poserr.savefig(os.path.join(comparison_dir, 'translation_error.pdf')) - - # ------------------------------------------------------------------------------ - # orientation error - fig_roterr = plt.figure(figsize=(8,6)) - ax_roterr_r = fig_roterr.add_subplot(311, ylabel='roll-error [rad]') - ax_roterr_p = fig_roterr.add_subplot(312, ylabel='pitch-error [rad]') - ax_roterr_y = fig_roterr.add_subplot(313, ylabel='yaw-error [rad]', xlabel='time [s]') - - for exp in experiments: - - # load dataset parameters - params_stream = open(os.path.join(results_dir, exp, 'params.yaml')) - params = yaml.load(params_stream) - - # plot translation error - rot_error = np.loadtxt(os.path.join(results_dir, exp, 'orientation_error.txt')) - rot_error[:,0] = rot_error[:,0]-rot_error[0,0] - ax_roterr_r.plot(rot_error[:,0], rot_error[:,3], label=params['experiment_label']) - ax_roterr_p.plot(rot_error[:,0], rot_error[:,2]) - ax_roterr_y.plot(rot_error[:,0], rot_error[:,1]) - - ax_roterr_r.set_xlim([0, rot_error[-1,0]+4]) - ax_roterr_p.set_xlim([0, rot_error[-1,0]+4]) - ax_roterr_y.set_xlim([0, rot_error[-1,0]+4]) - ax_roterr_r.legend(bbox_to_anchor=[0, 1], loc='upper left', ncol=3) - ax_roterr_r.grid() - ax_roterr_p.grid() - ax_roterr_y.grid() - fig_roterr.tight_layout() - fig_roterr.savefig(os.path.join(comparison_dir, 'orientation_error.pdf')) - - # ------------------------------------------------------------------------------ - # scale error - if plot_scale_drift: - fig_scale = plt.figure(figsize=(8,2.5)) - ax_scale = fig_scale.add_subplot(111, xlabel='time [s]', ylabel='scale change [\%]') - - for exp in experiments: - - # load dataset parameters - params = yaml.load(open(os.path.join(results_dir, exp, 'params.yaml'))) - - # plot translation error - scale_drift = open(os.path.join(results_dir, exp, 'scale_drift.txt')) - scale_drift[:,0] = scale_drift[:,0]-scale_drift[0,0] - ax_scale.plot(scale_drift[:,0], scale_drift[:,1], label=params['experiment_label']) - - ax_scale.set_xlim([0, rot_error[-1,0]+4]) - ax_scale.legend(bbox_to_anchor=[0, 1], loc='upper left', ncol=3) - ax_scale.grid() - fig_scale.tight_layout() - fig_scale.savefig(os.path.join(comparison_dir, 'scale_drift.pdf')) - - # ------------------------------------------------------------------------------ - # trajectory - -# fig_traj = plt.figure(figsize=(8,4.8)) -# ax_traj = fig_traj.add_subplot(111, xlabel='x [m]', ylabel='y [m]', aspect='equal', xlim=[-3.1, 4], ylim=[-1.5, 2.6]) -# -# plotTrajectory(ax_traj, '/home/cforster/Datasets/asl_vicon_d2/groundtruth_filtered.txt', 'Groundtruth', 'k', 1.5) -# plotTrajectory(ax_traj, results_dir+'/20130911_2229_nslam_i7_asl2_fast/traj_estimate_rotated.txt', 'Fast', 'g', 1) -# plotTrajectory(ax_traj, results_dir+'/20130906_2149_ptam_i7_asl2/traj_estimate_rotated.txt', 'PTAM', 'r', 1) -# -# mark_inset(ax_traj, axins, loc1=2, loc2=4, fc="none", ec='b') -# plt.draw() -# plt.show() -# ax_traj.legend(bbox_to_anchor=[1, 0], loc='lower right', ncol=3) -# ax_traj.grid() -# fig_traj.tight_layout() -# fig_traj.savefig('../results/trajectory_asl.pdf') - - -if __name__ == '__main__': - - default_name = time.strftime("%Y%m%d_%H%M", time.localtime())+'_comparison' - parser = argparse.ArgumentParser(description='Compare results.') - parser.add_argument('result_directories', nargs='+', help='list of result directories to compare') - parser.add_argument('--name', help='name of the comparison', default=default_name) - args = parser.parse_args() - - # create folder for comparison results - results_dir = os.path.join(rospkg.RosPack().get_path('svo_analysis'), 'results') - comparison_dir = os.path.join(results_dir, args.name) - if not os.path.exists(comparison_dir): - os.makedirs(comparison_dir) - - # run comparison - compare_results(args.result_directories, results_dir, comparison_dir) - - - - diff --git a/CPU_version/svo_analysis/scripts/comparison.py b/CPU_version/svo_analysis/scripts/comparison.py deleted file mode 100755 index a502ad1..0000000 --- a/CPU_version/svo_analysis/scripts/comparison.py +++ /dev/null @@ -1,159 +0,0 @@ -#!/usr/bin/python - -import os -import sys -import time -import rospkg -import numpy as np -import matplotlib.pyplot as plt -import yaml -import argparse -import svo_analysis.analyse_depth as analyse_depth -from matplotlib import rc - -# tell matplotlib to use latex font -rc('font',**{'family':'serif','serif':['Cardo']}) -rc('text', usetex=True) - -from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes -from mpl_toolkits.axes_grid1.inset_locator import mark_inset - -def plot_trajectory(ax, filename, label, color, linewidth): - file = open(filename) - data = file.read() - lines = data.replace(","," ").replace("\t"," ").split("\n") - trajectory = np.array([[v.strip() for v in line.split(" ") if v.strip()!=""] for line in lines if len(line)>0 and line[0]!="#"], dtype=np.float64) - ax.plot(trajectory[:,1], trajectory[:,2], label=label, color=color, linewidth=linewidth) - -def save_figure(fig, name, directory): - fig.tight_layout() - fig.savefig(os.path.join(directory, name+'.pdf'), bbox_inches="tight") - -def distances_along_trajectory(traj): - keys = traj.keys() - keys.sort() - motion = [ominus(traj[keys[i+1]],traj[keys[i]]) for i in range(len(keys)-1)] - distances = [0] - sum = 0 - for t in motion: - sum += compute_distance(t) - distances.append(sum) - return distances - -def get_distance_from_start(gt): - distances = np.diff(gt[:,1:4],axis=0) - distances = np.sqrt(np.sum(np.multiply(distances,distances),1)) - distances = np.cumsum(distances) - distances = np.concatenate(([0], distances)) - return distances - -def compare_results(comp_params, results_dir, comparison_dir): - print('run comparison: '+comp_params['comparison_name']) - - line_styles = ['-','--',':'] - line_colors = ['b','g','r','m','c'] - - # ------------------------------------------------------------------------- - # plot trajectory: - fig = plt.figure(figsize=(6,2)) - ax = fig.add_subplot(111, xlabel='x [m]', ylabel='y [m]') - for exp_set in comp_params['experiment_sets']: - print('processing experiment set: ' + exp_set['label']) - - for i, exp in enumerate(exp_set['experiments']): - data = np.loadtxt(os.path.join(results_dir, exp, 'traj_estimate.txt')) - if i == 0: - base_plot, = ax.plot(data[:,1], data[:,2], label=exp_set['label'], linestyle=line_styles[np.mod(i, len(line_styles))]) - else: - ax.plot(data[:,1], data[:,2], color=base_plot.get_color(), linestyle= line_styles[np.mod(i, len(line_styles))]) - ax.legend(loc='upper left', ncol=3) - save_figure(fig, 'trajectory', comparison_dir) - - # ------------------------------------------------------------------------- - # plot translation error: - fig = plt.figure(figsize=(6,2)) - ax = fig.add_subplot(111, xlabel='distance [m]', ylabel='translation drift [mm]') - for exp_set in comp_params['experiment_sets']: - print('processing experiment set: ' + exp_set['label']) - - for i, exp in enumerate(exp_set['experiments']): - gt = np.loadtxt(os.path.join(results_dir, exp, 'groundtruth_matched.txt')) - distances = get_distance_from_start(gt) - data = np.loadtxt(os.path.join(results_dir, exp, 'translation_error.txt')) - e = np.sqrt(np.sum(np.multiply(data[:,1:4],data[:,1:4]),1)) - - if np.shape(e)[0] > np.shape(distances)[0]: - print('WARNING: estimate has more measurement than groundtruth: ' - +str(np.shape(e)[0]-np.shape(distances)[0])) - e = e[0:np.shape(distances)[0]] - - distances = distances[0:np.shape(e)[0]] - - print '--' - print np.shape(e) - print np.shape(distances) - - if i == 0: - base_plot, = ax.plot(distances, e*1000, label=exp_set['label'], linestyle= line_styles[np.mod(i, len(line_styles))]) - else: - ax.plot(distances, e*1000, color=base_plot.get_color(), linestyle= line_styles[np.mod(i, len(line_styles))]) - - ax.legend(loc='upper left', ncol=3) - save_figure(fig, 'translation_error', comparison_dir) - - # ------------------------------------------------------------------------- - # plot depth estimation error: - fig = plt.figure(figsize=(6,5)) - ax = fig.add_subplot(111, xlabel='Travelled distance [m]', ylabel='Error [m]') - for k, exp_set in enumerate(comp_params['experiment_sets']): - print('plot depth error for experiment: ' + exp) - exp = exp_set['experiments'][0] - gt = np.loadtxt(os.path.join(results_dir, exp, 'groundtruth_matched.txt')) - x_axis_data = get_distance_from_start(gt) - analyse_depth.plot_depth_over_time(os.path.join(results_dir, exp), ax, - x_axis_data[1:], line_colors[k], exp_set['label']) - ax.legend(loc='upper left', ncol=3) - save_figure(fig, 'depth_error_textures', comparison_dir) - - fig = plt.figure(figsize=(6,5)) - ax = fig.add_subplot(111, xlabel='Travelled distance [m]', ylabel='Error [m]') - exp_set = comp_params['experiment_sets'][0] - for i, exp in enumerate(exp_set['experiments']): - print('plot depth error for speed: ' + exp) - gt = np.loadtxt(os.path.join(results_dir, exp, 'groundtruth_matched.txt')) - x_axis_data = get_distance_from_start(gt) - params = yaml.load(open(os.path.join(results_dir, exp, 'dataset_params.yaml'))) - analyse_depth.plot_depth_over_time(os.path.join(results_dir, exp), ax, - x_axis_data[1:], line_colors[i], - str(params['trajectory_modifiers']['speed'])+' m/s') - ax.legend(loc='upper left', ncol=3) - save_figure(fig, 'depth_error_speed', comparison_dir) - -if __name__ == '__main__': - - parser = argparse.ArgumentParser(description='Compare results of a VO pipeline.') - parser.add_argument('comparison_file', help='A YAML file that contains the details of the comparison') - args = parser.parse_args() - - # load comparison file - args.experiment_file = args.comparison_file.replace('.yaml','') - comparison_params_file = os.path.join(rospkg.RosPack().get_path('svo_analysis'), - 'comparisons', args.comparison_file+'.yaml') - if os.path.exists(comparison_params_file): - comp_params = yaml.load(open(comparison_params_file, 'r')) - else: - raise Exception("Provided comparison file does not exist.") - - # create folder for comparison results - comparison_dir = os.path.join(rospkg.RosPack().get_path('svo_analysis'), - 'comparisons', comp_params['comparison_name']) - if not os.path.exists(comparison_dir): - os.makedirs(comparison_dir) - - # folder where the results of previous experiments are saved - results_dir = os.path.join(rospkg.RosPack().get_path('svo_analysis'), 'results') - - # run comparison - compare_results(comp_params, results_dir, comparison_dir) - - diff --git a/CPU_version/svo_analysis/scripts/evaluate.py b/CPU_version/svo_analysis/scripts/evaluate.py deleted file mode 100755 index 726544c..0000000 --- a/CPU_version/svo_analysis/scripts/evaluate.py +++ /dev/null @@ -1,58 +0,0 @@ -#!/usr/bin/python -""" -Created on Sat Aug 10 18:21:47 2013 - -@author: Christian Forster -""" - -import os -import csv -import numpy as np -import rospkg -import argparse -import yaml -import svo_analysis.analyse_logs as analyse_logs -import svo_analysis.analyse_timing as analyse_timing -import svo_analysis.analyse_trajectory as analyse_trajectory -import svo_analysis.analyse_depth as analyse_depth - -def evaluate_dataset(trace_dir): - - # read tracefile - data = csv.reader(open(os.path.join(trace_dir, 'trace.csv'))) - fields = data.next() - D = dict() - for field in fields: - D[field] = list() - - # fill dictionary with column values - for row in data: - for (field, value) in zip(fields, row): - D[field].append(float(value)) - - # change dictionary values from list to numpy array for easier manipulation - for field, value in D.items(): - D[field] = np.array(D[field]) - - # generate plots - analyse_logs.analyse_logs(D, trace_dir) - analyse_timing.analyse_timing(D, trace_dir) - analyse_trajectory.analyse_trajectory(trace_dir) - - param = yaml.load(open(os.path.join(trace_dir, 'dataset_params.yaml'), 'r')) - if param['dataset_is_blender']: - analyse_depth.analyse_depth(trace_dir) - analyse_depth.analyse_depth_over_time(trace_dir) - - -if __name__=="__main__": - parser = argparse.ArgumentParser(description=''' - Evaluates tracefiles of SVO and generates the plots. - ''') - parser.add_argument('experiment_name', help='directory name of the tracefiles') - args = parser.parse_args() - - trace_dir = os.path.join(rospkg.RosPack().get_path('svo_analysis'), - 'results', - args.experiment_name) - evaluate_dataset(trace_dir) \ No newline at end of file diff --git a/CPU_version/svo_analysis/setup.py b/CPU_version/svo_analysis/setup.py deleted file mode 100644 index 0d94673..0000000 --- a/CPU_version/svo_analysis/setup.py +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env python - -from distutils.core import setup -from catkin_pkg.python_setup import generate_distutils_setup - -d = generate_distutils_setup( - packages=['svo_analysis'], - package_dir={'': 'src'}, - install_requires=['rospkg', 'yaml'], - ) - -setup(**d) \ No newline at end of file diff --git a/CPU_version/svo_analysis/src/__init__.py b/CPU_version/svo_analysis/src/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/CPU_version/svo_analysis/src/svo_analysis/__init__.py b/CPU_version/svo_analysis/src/svo_analysis/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/CPU_version/svo_analysis/src/svo_analysis/analyse_dataset.py b/CPU_version/svo_analysis/src/svo_analysis/analyse_dataset.py deleted file mode 100644 index 53a2501..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/analyse_dataset.py +++ /dev/null @@ -1,41 +0,0 @@ -# -*- coding: utf-8 -*- - -import associate -import numpy as np -import matplotlib.pyplot as plt -import yaml - -def loadDataset(filename): - file = open(filename) - data = file.read() - lines = data.replace(","," ").replace("\t"," ").split("\n") - D = np.array([[v.strip() for v in line.split(" ") if v.strip()!=""] for line in lines if len(line)>0 and line[0]!="#"], dtype=np.float64) - return D - -dataset_dir = '/home/cforster/Datasets/SlamBenchmark/px4_r2' -trajectory_data = dataset_dir+'/groundtruth.txt' -stepsize = 10 - -# load dataset -data = loadDataset(trajectory_data) -n = data.shape[0] -steps = np.arange(0,n,stepsize) - -# compute trajectory length -last_pos = data[0,1:4] -trajectory_length = 0 - -for i in steps[1:]: - new_pos = data[i,1:4] - trajectory_length += np.linalg.norm(new_pos-last_pos) - last_pos = new_pos - - -print 'trajectory lenght = ' + str(trajectory_length) + 'm' -print 'height mean = ' + str(np.mean(data[:,3])) + 'm' -print 'height median = ' + str(np.median(data[:,3])) + 'm' -print 'height std = ' + str(np.std(data[:,3])) + 'm' -print 'duration = ' + str(data[-1,0]-data[0,0]) + 's' -print 'speed = ' + str(trajectory_length/(data[-1,0]-data[0,0])) + 'm/s' - - diff --git a/CPU_version/svo_analysis/src/svo_analysis/analyse_depth.py b/CPU_version/svo_analysis/src/svo_analysis/analyse_depth.py deleted file mode 100755 index 8a21b53..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/analyse_depth.py +++ /dev/null @@ -1,66 +0,0 @@ -#!/usr/bin/python - -import os -import argparse -import numpy as np -import matplotlib.pyplot as plt -from matplotlib import rc - -rc('font',**{'family':'serif','serif':['Cardo']}) -rc('text', usetex=True) - -def precision_plot(ax, errors, max_error, color, linestyle): - number_of_error_ranges = 500 - error_step = max_error / number_of_error_ranges - precision_array = np.zeros(number_of_error_ranges) - error_array = np.zeros(number_of_error_ranges) - n_measurements = len(errors) - for error_ind in range(0, number_of_error_ranges): - precision_array[error_ind] = np.sum(errors < error_step*error_ind) / float(n_measurements) * 100.0 - error_array[error_ind] = error_step*error_ind - plot_obj, = ax.plot(error_array, precision_array, label='error', linestyle=linestyle, color=color) - return plot_obj - -def analyse_depth(results_dir): - D = np.loadtxt(os.path.join(results_dir, 'depth_error.txt'), delimiter=' ') - D = D[D[:,0] > 1,:] - - fig = plt.figure(figsize=(6,5)) - ax = fig.add_subplot(111, xlabel='depth error [m]', ylabel='Precision [\%]') - errors = np.abs(D[:,1]) - precision_plot(ax, errors, 0.05, 'r', '-') - fig.tight_layout() - fig.savefig(os.path.join(results_dir,'depth_error.pdf'), bbox_inches="tight") - - -def plot_depth_over_time(results_dir, ax, x_axis_data, color, label=''): - D = np.loadtxt(os.path.join(results_dir, 'depth_error.txt'), delimiter=' ') - D = D[D[:,0] > 1,:] - idxs = np.unique(D[:,0]) - percentile_10 = np.zeros(len(idxs)) - percentile_50 = np.zeros(len(idxs)) - percentile_90 = np.zeros(len(idxs)) - for i in range(len(idxs)): - errors = np.abs(D[D[:,0]==idxs[i],1]) - percentile_10[i] = np.percentile(errors, 10) - percentile_50[i] = np.percentile(errors, 50) - percentile_90[i] = np.percentile(errors, 90) - if len(x_axis_data) == 0: - x_axis_data = idxs - print np.shape(x_axis_data) - print np.shape(idxs) - print '--' - ax.plot(x_axis_data, percentile_50, linewidth=2, color=color, label=label) - ax.plot(x_axis_data, percentile_10, linewidth=0.5, color=color, alpha=0.5) - ax.plot(x_axis_data, percentile_90, linewidth=0.5, color=color, alpha=0.5) - ax.fill_between(x_axis_data, percentile_10, percentile_90, color=color, alpha=0.1) - -if __name__ == '__main__': - parser = argparse.ArgumentParser(description='Analyse depth estimate') - parser.add_argument('results_dir', help='folder with the results') - args = parser.parse_args() - analyse_depth(args.results_dir) - - fig = plt.figure(figsize=(6,5)) - ax = fig.add_subplot(111, xlabel='Measurement', ylabel='Scale-Drift') - plot_depth_over_time(args.results_dir, [], ax) \ No newline at end of file diff --git a/CPU_version/svo_analysis/src/svo_analysis/analyse_logs.py b/CPU_version/svo_analysis/src/svo_analysis/analyse_logs.py deleted file mode 100755 index 7dc2acc..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/analyse_logs.py +++ /dev/null @@ -1,74 +0,0 @@ -#!/usr/bin/python - -import os -import yaml -import numpy as np -import matplotlib.pyplot as plt - -def analyse_logs(D, trace_dir): - - # identify measurements which result from normal frames and which from keyframes - is_kf = np.argwhere( (D['dropout'] == 1) & (D['repr_n_mps'] >= 0)) - is_frame = np.argwhere(D['repr_n_mps'] >= 0) - is_nokf = np.argwhere( (D['dropout'] == 0) & (D['repr_n_mps'] >= 0)) - - # set initial time to zero - D['timestamp'] = D['timestamp'] - D['timestamp'][0] - - # ---------------------------------------------------------------------------- - # plot number of reprojected points - mean_n_reproj_points = np.mean(D['repr_n_mps'][is_frame]); - mean_n_reproj_matches = np.mean(D['repr_n_new_references'][is_frame]); - mean_n_edges_final = np.mean(D['sfba_n_edges_final'][is_frame]); - - fig = plt.figure(figsize=(8,3)) - ax = fig.add_subplot(111, xlabel='time [s]') - ax.plot(D['timestamp'][is_frame], D['repr_n_mps'][is_frame], 'r-', - label='Reprojected Points, avg = %.2f'%mean_n_reproj_points) - ax.plot(D['timestamp'][is_frame], D['repr_n_new_references'][is_frame], 'b-', - label='Feature Matches, avg = %.2f'%mean_n_reproj_matches) - ax.plot(D['timestamp'][is_frame], D['sfba_n_edges_final'][is_frame], 'g-', - label='Points after Optimization, avg = %.2f'%mean_n_edges_final) - ax.set_ylim(bottom=0) - ax.legend(loc='lower right') - fig.tight_layout() - fig.savefig(os.path.join(trace_dir,'num_reprojected.pdf'), bbox_inches="tight") - - # ---------------------------------------------------------------------------- - # plot median error before and after pose-optimzation and bundle adjustment - init_error_avg = np.mean(D['sfba_error_init'][is_frame]) - opt1_avg = np.mean(D['sfba_error_final'][is_frame]) - - fig = plt.figure(figsize=(8,2)) - ax = fig.add_subplot(111, xlabel='time [s]', ylabel='error [px]') - ax.plot(D['timestamp'][is_frame], D['sfba_error_init'][is_frame], 'r-', label='Initial error') - ax.plot(D['timestamp'][is_frame], D['sfba_error_final'][is_frame], 'b-', label='Final error') - ax.legend(ncol=2) - fig.tight_layout() - fig.savefig(os.path.join(trace_dir,'reprojection_error.pdf'), bbox_inches="tight") - print 'average reprojection error improvement: ' + str(init_error_avg - opt1_avg) - - # ---------------------------------------------------------------------------- - # plot number of candidate points - fig = plt.figure(figsize=(8,3)) - ax = fig.add_subplot(111, xlabel='time [s]') - ax.plot(D['timestamp'][is_frame], D['n_candidates'][is_frame], 'r-', label='Candidate Points') - fig.tight_layout() - fig.savefig(os.path.join(trace_dir,'candidate_points.pdf'), bbox_inches="tight") - - # ---------------------------------------------------------------------------- - # plot number of candidate points - fig = plt.figure(figsize=(8,2)) - ax = fig.add_subplot(111, xlabel='time [s]', ylabel='px') - ax.plot(D['timestamp'][is_frame], D['sfba_thresh'][is_frame], 'r-', label='Threshold') - fig.tight_layout() - fig.savefig(os.path.join(trace_dir,'optimization_thresh.pdf'), bbox_inches="tight") - - # ---------------------------------------------------------------------------- - # write other statistics to file - stat = {'num_frames': len(is_frame), - 'num_kfs': len(is_kf), - 'reproj_error_avg_improvement': float(init_error_avg - opt1_avg)} - with open(os.path.join(trace_dir,'dataset_stats.yaml'),'w') as outfile: - outfile.write(yaml.dump(stat, default_flow_style=False)) - diff --git a/CPU_version/svo_analysis/src/svo_analysis/analyse_timing.py b/CPU_version/svo_analysis/src/svo_analysis/analyse_timing.py deleted file mode 100755 index 0dfc1bc..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/analyse_timing.py +++ /dev/null @@ -1,68 +0,0 @@ -#!/usr/bin/python - -import os -import numpy as np -import matplotlib.pyplot as plt - -def analyse_timing(D, trace_dir): - - # identify measurements which result from normal frames and which from keyframes - is_frame = np.argwhere(D['repr_n_mps'] >= 0) - n_frames = len(is_frame) - - # set initial time to zero - D['timestamp'] = D['timestamp'] - D['timestamp'][0] - - # ---------------------------------------------------------------------------- - # plot total time for frame processing - avg_time = np.mean(D['tot_time'][is_frame])*1000; - fig = plt.figure(figsize=(8, 3)) - ax = fig.add_subplot(111, ylabel='processing time [ms]', xlabel='time [s]') - ax.plot(D['timestamp'][is_frame], D['tot_time'][is_frame]*1000, 'g-', label='total time [ms]') - ax.plot(D['timestamp'][is_frame], np.ones(n_frames)*avg_time, 'b--', label=str('%(time).1fms mean time' % {'time': avg_time})) - ax.legend() - fig.tight_layout() - fig.savefig(os.path.join(trace_dir,'timing.pdf'), bbox_inches="tight") - - # ---------------------------------------------------------------------------- - # plot boxplot - fig = plt.figure(figsize=(6,2)) - ax = fig.add_subplot(111, xlabel='Processing time [ms]') - ax.boxplot([ - D['tot_time'][is_frame]*1000, -# D['t_local_ba'][is_kf]*1000, - D['pose_optimizer'][is_frame]*1000 + D['point_optimizer'][is_frame]*1000, - D['reproject'][is_frame]*1000, - D['sparse_img_align'][is_frame]*1000, - D['pyramid_creation'][is_frame]*1000 - ], 0,'', vert=0) - - boxplot_labels = [ - r'\textbf{Total Motion Estimation: %2.2fms}' % np.median(D['tot_time'][is_frame]*1000), -# 'Local BA (KF only): %.2fms ' % np.median(D['local_ba'][is_kf]*1000), - 'Refinement: %2.2fms' % np.median(D['pose_optimizer'][is_frame]*1000 + D['point_optimizer'][is_frame]*1000), - 'Feature Alignment: %2.2fms' % np.median(D['reproject'][is_frame]*1000), - 'Sparse Image Alignment: %2.2fms' % np.median(D['sparse_img_align'][is_frame]*1000), - 'Pyramid Creation: %2.2fms' % np.median(D['pyramid_creation'][is_frame]*1000) ] - - ax.set_yticks(np.arange(len(boxplot_labels))+1) - ax.set_yticklabels(boxplot_labels) - fig.tight_layout() - fig.savefig(os.path.join(trace_dir,'timing_boxplot.pdf'), bbox_inches="tight") - - # ---------------------------------------------------------------------------- - # plot boxplot reprojection - fig = plt.figure(figsize=(6,2)) - ax = fig.add_subplot(111, xlabel='Processing time [ms]') - ax.boxplot([ D['reproject'][is_frame]*1000, - D['feature_align'][is_frame]*1000, - D['reproject_candidates'][is_frame]*1000, - D['reproject_kfs'][is_frame]*1000 ], 0, '', vert=0) - boxplot_labels = [r'\textbf{Total Reprojection: %2.2fms}' % np.median(D['reproject'][is_frame]*1000), - 'Feature Alignment: %2.2fms' % np.median(D['feature_align'][is_frame]*1000), - 'Reproject Candidates: %2.2fms' % np.median(D['reproject_candidates'][is_frame]*1000), - 'Reproject Keyframes: %2.2fms' % np.median(D['reproject_kfs'][is_frame]*1000) ] - ax.set_yticks(np.arange(len(boxplot_labels))+1) - ax.set_yticklabels(boxplot_labels) - fig.tight_layout() - fig.savefig(os.path.join(trace_dir,'timing_reprojection.pdf'), bbox_inches="tight") \ No newline at end of file diff --git a/CPU_version/svo_analysis/src/svo_analysis/analyse_trajectory.py b/CPU_version/svo_analysis/src/svo_analysis/analyse_trajectory.py deleted file mode 100755 index c2c93de..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/analyse_trajectory.py +++ /dev/null @@ -1,185 +0,0 @@ -#!/usr/bin/python - -import os -import yaml -import argparse -import numpy as np -import matplotlib.pyplot as plt -import svo_analysis.tum_benchmark_tools.associate as associate -import vikit_py.transformations as transformations -import vikit_py.align_trajectory as align_trajectory -from matplotlib import rc -rc('font',**{'family':'serif','serif':['Cardo']}) -rc('text', usetex=True) - -def plot_translation_error(timestamps, translation_error, results_dir): - fig = plt.figure(figsize=(8, 2.5)) - ax = fig.add_subplot(111, xlabel='time [s]', ylabel='position drift [mm]', xlim=[0,timestamps[-1]-timestamps[0]+4]) - ax.plot(timestamps-timestamps[0], translation_error[:,0]*1000, 'r-', label='x') - ax.plot(timestamps-timestamps[0], translation_error[:,1]*1000, 'g-', label='y') - ax.plot(timestamps-timestamps[0], translation_error[:,2]*1000, 'b-', label='z') - ax.legend() - fig.tight_layout() - fig.savefig(results_dir+'/translation_error.pdf') - -def plot_rotation_error(timestamps, rotation_error, results_dir): - fig = plt.figure(figsize=(8, 2.5)) - ax = fig.add_subplot(111, xlabel='time [s]', ylabel='orientation drift [rad]', xlim=[0,timestamps[-1]-timestamps[0]+4]) - ax.plot(timestamps-timestamps[0], rotation_error[:,0], 'r-', label='yaw') - ax.plot(timestamps-timestamps[0], rotation_error[:,1], 'g-', label='pitch') - ax.plot(timestamps-timestamps[0], rotation_error[:,2], 'b-', label='roll') - ax.legend() - fig.tight_layout() - fig.savefig(results_dir+'/orientation_error.pdf') - -def analyse_synthetic_trajectory(results_dir): - data = np.loadtxt(os.path.join(results_dir, 'translation_error.txt')) - timestamps = data[:,0] - translation_error = data[:,1:4] - plot_translation_error(timestamps, translation_error, results_dir) - - # plot orientation error - data = np.loadtxt(os.path.join(results_dir, 'orientation_error.txt')) - timestamps = data[:,0] - orientation_error = data[:,1:4] - plot_rotation_error(timestamps, orientation_error, results_dir) - -def analyse_optitrack_trajectory_with_hand_eye_calib(results_dir, params, n_align_frames = 200): - print('loading hand-eye-calib') - T_cm_quat = np.array([params['hand_eye_calib']['Tcm_qx'], - params['hand_eye_calib']['Tcm_qy'], - params['hand_eye_calib']['Tcm_qz'], - params['hand_eye_calib']['Tcm_qw']]) - T_cm_tran = np.array([params['hand_eye_calib']['Tcm_tx'], - params['hand_eye_calib']['Tcm_ty'], - params['hand_eye_calib']['Tcm_tz']]) - T_cm = get_rigid_body_trafo(T_cm_quat, T_cm_tran) - T_mc = transformations.inverse_matrix(T_cm) - - t_es, p_es, q_es, t_gt, p_gt, q_gt = load_dataset(results_dir, params['cam_delay']) - - # align Sim3 to get scale - print('align Sim3 using '+str(n_align_frames)+' first frames.') - scale,rot,trans = align_trajectory.align_sim3(p_gt[0:n_align_frames,:], p_es[0:n_align_frames,:]) - print 'scale = '+str(scale) - - # get trafo between (v)ision and (o)ptitrack frame - print q_gt[0,:] - print p_gt[0,:] - T_om = get_rigid_body_trafo(q_gt[0,:], p_gt[0,:]) - T_vc = get_rigid_body_trafo(q_es[0,:], scale*p_es[0,:]) - T_cv = transformations.inverse_matrix(T_vc) - T_ov = np.dot(T_om, np.dot(T_mc, T_cv)) - print 'T_ov = ' + str(T_ov) - - # apply transformation to estimated trajectory - q_es_aligned = np.zeros(np.shape(q_es)) - rpy_es_aligned = np.zeros(np.shape(p_es)) - rpy_gt = np.zeros(np.shape(p_es)) - p_es_aligned = np.zeros(np.shape(p_es)) - for i in range(np.shape(p_es)[0]): - T_vc = get_rigid_body_trafo(q_es[i,:],p_es[i,:]) - T_vc[0:3,3] *= scale - T_om = np.dot(T_ov, np.dot(T_vc, T_cm)) - p_es_aligned[i,:] = T_om[0:3,3] - q_es_aligned[i,:] = transformations.quaternion_from_matrix(T_om) - rpy_es_aligned[i,:] = transformations.euler_from_quaternion(q_es_aligned[i,:], 'rzyx') - rpy_gt[i,:] = transformations.euler_from_quaternion(q_gt[i,:], 'rzyx') - - # plot position error (drift) - translation_error = (p_gt-p_es_aligned) - plot_translation_error(t_es, translation_error, results_dir) - - # plot orientation error (drift) - orientation_error = (rpy_gt - rpy_es_aligned) - plot_rotation_error(t_es, orientation_error, results_dir) - - # plot scale drift - motion_gt = np.diff(p_gt, 0) - motion_es = np.diff(p_es_aligned, 0) - dist_gt = np.sqrt(np.sum(np.multiply(motion_gt,motion_gt),1)) - dist_es = np.sqrt(np.sum(np.multiply(motion_es,motion_es),1)) - fig = plt.figure(figsize=(8,2.5)) - ax = fig.add_subplot(111, xlabel='time [s]', ylabel='scale change [\%]', xlim=[0,t_es[-1]+4]) - scale_drift = np.divide(dist_es,dist_gt)*100-100 - ax.plot(t_es, scale_drift, 'b-') - fig.tight_layout() - fig.savefig(results_dir+'/scale_drift.pdf') - - # plot trajectory - fig = plt.figure() - ax = fig.add_subplot(111, title='trajectory', aspect='equal', xlabel='x [m]', ylabel='y [m]') - ax.plot(p_es_aligned[:,0], p_es_aligned[:,1], 'b-', label='estimate') - ax.plot(p_gt[:,0], p_gt[:,1], 'r-', label='groundtruth') - ax.plot(p_es_aligned[0:n_align_frames,0], p_es_aligned[0:n_align_frames,1], 'g-', linewidth=2, label='aligned') - ax.legend() - fig.tight_layout() - fig.savefig(results_dir+'/trajectory.pdf') - -def analyse_trajectory(results_dir, n_align_frames = 200, use_hand_eye_calib = True): - params = yaml.load(open(os.path.join(results_dir, 'dataset_params.yaml'),'r')) - if params['dataset_is_blender']: - analyse_synthetic_trajectory(results_dir) - elif use_hand_eye_calib: - analyse_optitrack_trajectory_with_hand_eye_calib(results_dir, params, n_align_frames) - else: - t_es, p_es, q_es, t_gt, p_gt, q_gt = load_dataset(results_dir, params['cam_delay']) - scale,rot,trans = align_trajectory.align_sim3(p_gt[0:n_align_frames,:], p_es[0:n_align_frames,:]) - p_es_aligned = np.zeros(np.shape(p_es)) - for i in range(np.shape(p_es)[0]): - p_es_aligned[i,:] = scale*rot.dot(p_es[i,:]) + trans - # plot position error (drift) - translation_error = (p_gt-p_es_aligned) - plot_translation_error(t_es, translation_error, results_dir) - -def get_rigid_body_trafo(quat,trans): - T = transformations.quaternion_matrix(quat) - T[0:3,3] = trans - return T - -def load_dataset(results_dir, cam_delay): - print('loading dataset in '+results_dir) - print('cam_delay = '+str(cam_delay)) - - data_gt = open(os.path.join(results_dir, 'groundtruth.txt')).read() - lines = data_gt.replace(","," ").replace("\t"," ").split("\n") - data_gt = np.array([[np.float(v.strip()) for i,v in enumerate(line.split(" ")) if v.strip()!=""] for line in lines if len(line)>0 and line[0]!="#"]) - #data_gt = np.array([[np.float(v.strip()) for i,v in enumerate(line.split(" ")) if i != 1 and v.strip()!=""] for line in lines if len(line)>0 and line[0]!="#"]) - data_gt = [(float(l[0]),l[1:]) for l in data_gt] - data_gt = dict(data_gt) - - data_es = open(os.path.join(results_dir, 'traj_estimate.txt')).read() - lines = data_es.replace(","," ").replace("\t"," ").split("\n") - data_es = np.array([[np.float(v.strip()) for v in line.split(" ") if v.strip()!=""] for line in lines if len(line)>0 and line[0]!="#"]) - data_es = [(float(l[0]),l[1:]) for l in data_es] - data_es = dict(data_es) - - matches = associate.associate(data_gt, data_es, -cam_delay, 0.02) - p_gt = np.array([[np.float(value) for value in data_gt[a][0:3]] for a,b in matches]) - q_gt = np.array([[np.float(value) for value in data_gt[a][3:7]] for a,b in matches]) - p_es = np.array([[np.float(value) for value in data_es[b][0:3]] for a,b in matches]) - q_es = np.array([[np.float(value) for value in data_es[b][3:7]] for a,b in matches]) - t_gt = np.array([np.float(a) for a,b in matches]) - t_es = np.array([np.float(b) for a,b in matches]) - - # set start time to zero - start_time = min(t_es[0], t_gt[0]) - t_es -= start_time - t_gt -= start_time - return t_es, p_es, q_es, t_gt, p_gt, q_gt - -if __name__ == '__main__': - - # parse command line - parser = argparse.ArgumentParser(description=''' - Analyse trajectory - ''') - parser.add_argument('results_dir', help='folder with the results') - parser.add_argument('--use_hand_eye_calib', help='', action='store_true') - parser.add_argument('--n_align_frames', help='', default=200) - args = parser.parse_args() - - print('analyse trajectory for dataset: '+str(args.results_dir)) - analyse_trajectory(args.results_dir, - n_align_frames = int(args.n_align_frames), - use_hand_eye_calib = args.use_hand_eye_calib) \ No newline at end of file diff --git a/CPU_version/svo_analysis/src/svo_analysis/filter_groundtruth_smooth.py b/CPU_version/svo_analysis/src/svo_analysis/filter_groundtruth_smooth.py deleted file mode 100644 index d0cc240..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/filter_groundtruth_smooth.py +++ /dev/null @@ -1,60 +0,0 @@ -#!/usr/bin/python - - -import numpy as np -import matplotlib.pyplot as plt -import transformations -from scipy import signal - -save = True -data_filename = '/home/cforster/Datasets/SlamBenchmark/asl_vicon_d2/groundtruth.txt' -filtered_data_filename = '/home/cforster/Datasets/SlamBenchmark/asl_vicon_d2/groundtruth_filtered.txt' -file = open(data_filename) -data = file.read() -lines = data.replace(","," ").replace("\t"," ").split("\n") -D = np.array([[v.strip() for v in line.split(" ") if v.strip()!=""] for line in lines if len(line)>0 and line[0]!="#"], dtype=np.float64) - -n = np.shape(D)[0] -rpy = np.empty([n,3]) -for i in range(n): - quat = D[i,4:8] - rpy[i,:] = transformations.euler_from_quaternion(quat, axes='sxyz') - -# filter rpy -f_sensor = 200.0; # sampling frequency in hz -f_cut = 15.0; # cutoff frequency in hz -b,a = signal.butter(5,f_cut/(f_sensor/2)); -print a -print b - -rpy_filt = np.empty([n,3]) -rpy_filt[:,0] = signal.filtfilt(b, a, rpy[:,0]) -rpy_filt[:,1] = signal.filtfilt(b, a, rpy[:,1]) -rpy_filt[:,2] = signal.filtfilt(b, a, rpy[:,2]) - -fig = plt.figure() -ax = fig.add_subplot(111, title='orientation filtered') -ax.plot(rpy[:,0], 'r-') -ax.plot(rpy[:,1], 'g-') -ax.plot(rpy[:,2], 'b-') -ax.plot(rpy_filt[:,0], 'k-', linewidth=2) -ax.plot(rpy_filt[:,1], 'k-', linewidth=2) -ax.plot(rpy_filt[:,2], 'k-', linewidth=2) - -fig = plt.figure() -ax = fig.add_subplot(111, title='position') -ax.plot(D[:,1], 'r') -ax.plot(D[:,2], 'g') -ax.plot(D[:,3], 'b') - -fig = plt.figure() -ax = fig.add_subplot(111, title='trajectory from top') -ax.plot(D[:,1], D[:,2]) - -if save: - f = open(filtered_data_filename,'w') - for i in range(np.shape(D)[0]): - quat = transformations.quaternion_from_euler(rpy_filt[i,0], rpy_filt[i,1], rpy_filt[i,2], axes='sxyz') - f.write('%.7f %.5f %.5f %.5f %.5f %.5f %.5f %.5f\n' % (D[i,0], D[i,1], D[i,2], D[i,3], quat[0], quat[1], quat[2], quat[3])) - - f.close() diff --git a/CPU_version/svo_analysis/src/svo_analysis/hand_eye_calib.py b/CPU_version/svo_analysis/src/svo_analysis/hand_eye_calib.py deleted file mode 100644 index a54b4f8..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/hand_eye_calib.py +++ /dev/null @@ -1,227 +0,0 @@ -# -*- coding: utf-8 -*- -""" -Created on Sun Aug 4 15:47:55 2013 - -@author: cforster -""" -import os -import yaml -import numpy as np -import svo_analysis.tum_benchmark_tools.associate as associate -import vikit_py.align_trajectory as align_trajectory -import vikit_py.transformations as transformations -import matplotlib.pyplot as plt - -# user config -display = True -dataset_dir = '/home/cforster/catkin_ws/src/rpg_svo/svo_analysis/results/rpg_circle_1' -n_measurements = 400 -n_align_sim3 = 600 -delta = 50 - -# load dataset parameters -params = yaml.load(open(os.path.join(dataset_dir, 'dataset_params.yaml'))) - -# set trajectory groundtruth and estimate file -traj_groundtruth = os.path.join(dataset_dir, 'groundtruth.txt') -traj_estimate = os.path.join(dataset_dir,'traj_estimate.txt') - -# load data -data_gt = associate.read_file_list(traj_groundtruth) -data_es = associate.read_file_list(traj_estimate) - -# select matches -offset = -params['cam_delay'] -print ('offset = '+str(offset)) -matches = associate.associate(data_gt, data_es, offset, 0.02) -#matches = matches[500:] -p_gt = np.array([[float(value) for value in data_gt[a][0:3]] for a,b in matches]) -q_gt = np.array([[float(value) for value in data_gt[a][3:7]] for a,b in matches]) -p_es = np.array([[float(value) for value in data_es[b][0:3]] for a,b in matches]) -q_es = np.array([[float(value) for value in data_es[b][3:7]] for a,b in matches]) - -# -------------------------------------------------------------------------------- -# align Sim3 to get scale -scale,rot,trans = align_trajectory.align_sim3(p_gt[0:n_align_sim3,:], p_es[0:n_align_sim3,:]) - -#model_aligned = s * R * model + t -#alignment_error = model_aligned - data -#t_error = np.sqrt(np.sum(np.multiply(alignment_error,alignment_error),0)).A[0] - -p_es_aligned = np.transpose(scale*np.dot(rot,np.transpose(p_es)))+trans -p_es = scale*p_es - - -print 's='+str(scale) -print 't='+str(trans) -print 'R='+str(rot) - -# plot sim3 aligned trajectory -fig = plt.figure() -ax = fig.add_subplot(111, aspect='equal') -ax.plot(p_es_aligned[:,0], p_es_aligned[:,1], 'r-', label='estimate', alpha=0.2) -ax.plot(p_gt[:,0], p_gt[:,1], 'b-', label='groundtruth', alpha=0.2) -ax.plot(p_es_aligned[:n_align_sim3,0], p_es_aligned[:n_align_sim3,1], 'g-', label='aligned', linewidth=2) -ax.plot(p_gt[:n_align_sim3,0], p_gt[:n_align_sim3,1], 'm-', label='aligned', linewidth=2) -ax.legend() -for (x1,y1,z1),(x2,y2,z2) in zip(p_es_aligned[:n_align_sim3:10],p_gt[:n_align_sim3:10]): - ax.plot([x1,x2],[y1,y2],'-',color="red") - -fig = plt.figure() -ax = fig.add_subplot(111) -ax.plot(p_gt[:,0], 'r-') -ax.plot(p_gt[:,1], 'g-') -ax.plot(p_gt[:,2], 'b-') -ax.plot(p_es_aligned[:,0], 'r--') -ax.plot(p_es_aligned[:,1], 'g--') -ax.plot(p_es_aligned[:,2], 'b--') - - -# -------------------------------------------------------------------------------- -# hand-eye-calib - -# select random measurements -I = np.array(np.random.rand(n_measurements,1)*(np.shape(matches)[0]-delta), dtype=int)[:,0] -R,b = align_trajectory.hand_eye_calib(q_gt, q_es, p_gt, p_es, I, delta, True) - -print 'quat = ' + str(transformations.quaternion_from_matrix(transformations.convert_3x3_to_4x4(R))) -print 'b = ' + str(b) - -rpy_es = np.zeros([q_es.shape[0]-1, 3]) -rpy_gt = np.zeros([q_gt.shape[0]-1, 3]) -t_gt = np.zeros([q_es.shape[0]-1,3]) -t_es = np.zeros([q_es.shape[0]-1,3]) - -for i in range(delta,np.shape(q_es)[0]): - A1 = transformations.quaternion_matrix(q_es[i-delta,:])[:3,:3] - A2 = transformations.quaternion_matrix(q_es[i,:])[:3,:3] - A = np.dot(A1.transpose(), A2) - B1 = transformations.quaternion_matrix(q_gt[i-delta,:])[:3,:3] - B2 = transformations.quaternion_matrix(q_gt[i,:])[:3,:3] - B = np.dot(B1.transpose(), B2) - B_es = np.dot(np.transpose(R), np.dot(A, R)) - rpy_gt[i-delta,:] = transformations.euler_from_matrix(B, 'rzyx') - rpy_es[i-delta,:] = transformations.euler_from_matrix(B_es, 'rzyx') - t_B = np.dot(np.transpose(B1),(p_gt[i,:]-p_gt[i-delta,:])) - t_A = np.dot(np.transpose(A1),(p_es[i,:]-p_es[i-delta,:])) - t_gt[i-delta,:] = t_B - t_es[i-delta,:] = np.dot(np.transpose(R), np.dot(A,b[:,0]) + t_A - b[:,0]) - -alignment_error = (t_gt-t_es) -error = np.sqrt(np.sum(np.multiply(alignment_error,alignment_error),1)) -I_accurate = np.argwhere(error < np.percentile(error, 90))[:,0] - -if display: - plt.figure() - plt.plot(rpy_es[:,0], 'r-', label='es roll') - plt.plot(rpy_es[:,1], 'g-', label='es pitch') - plt.plot(rpy_es[:,2], 'b-', label='es yaw') - plt.plot(rpy_gt[:,0], 'r--', label='gt roll') - plt.plot(rpy_gt[:,1], 'g--', label='gt pitch') - plt.plot(rpy_gt[:,2], 'b--', label='gt yaw') - plt.legend() - plt.figure() - plt.plot(t_gt[:,0], 'r-', label='gt x') - plt.plot(t_gt[:,1], 'g-', label='gt y') - plt.plot(t_gt[:,2], 'b-', label='gt z') - plt.plot(t_es[:,0], 'r--', label='es x') - plt.plot(t_es[:,1], 'g--', label='es y') - plt.plot(t_es[:,2], 'b--', label='es z') - plt.legend() - plt.figure() - plt.plot(error,'-g') - - -print 'e_rms = ' + str(np.sqrt(np.dot(error,error) / len(error))) -print 'e_mean = ' + str(np.mean(error)) -print 'e_median = ' + str(np.median(error)) -print 'e_std = ' + str(np.std(error)) - - -# now sample again from the filtered list: -N = 10 -display = False -n_acc_meas = I_accurate.size -n_measurements = 500 - -#for i in range(5): -# print '-------------------------------------' -# i0 = np.array(rand(n_measurements,1)*np.shape(I_accurate)[0], dtype=int)[:,0] -# i1 = np.minimum(i0+N, n_acc_meas-1) -# I = np.empty(i0.size*2, dtype=int) -# I[0::2] = I_accurate[i0] -# I[1::2] = I_accurate[i1] -# R,b = handEyeCalib(q_gt[I,:], q_es[I,:], p_gt[I,:], p_es[I,:], True) -# print 'quat = ' + str(ru.dcm2quat(R)) -# print 'b = ' + str(b) -# rpy_es = np.zeros([q_es.shape[0]-1, 3]) -# rpy_gt = np.zeros([q_gt.shape[0]-1, 3]) -# t_gt = np.zeros([q_es.shape[0]-1,3]) -# t_es = np.zeros([q_es.shape[0]-1,3]) -# -# delta = 10 -# for i in range(delta,np.shape(q_es)[0]): -# A1 = ru.quat2dcm(q_es[i-delta,:]) -# A2 = ru.quat2dcm(q_es[i,:]) -# A = np.dot(A1.transpose(), A2) -# B1 = ru.quat2dcm(q_gt[i-delta,:]) -# B2 = ru.quat2dcm(q_gt[i,:]) -# B = np.dot(B1.transpose(), B2) -# B_es = np.dot(np.transpose(R), np.dot(A, R)) -# rpy_gt[i-delta,:] = ru.dcm2rpy(B) -# rpy_es[i-delta,:] = ru.dcm2rpy(B_es) -# t_B = np.dot(np.transpose(B1),(p_gt[i,:]-p_gt[i-delta,:])) -# t_A = np.dot(np.transpose(A1),(p_es[i,:]-p_es[i-delta,:])) -# t_gt[i-delta,:] = t_B -# t_es[i-delta,:] = np.dot(np.transpose(R), np.dot(A,b[:,0]) + t_A - b[:,0]) -# alignment_error = (t_gt-t_es) -# error = np.sqrt(np.sum(np.multiply(alignment_error,alignment_error),1)) -# -# if display: -# plt.figure() -# plt.plot(rpy_es[:,0], 'r-', label='es roll') -# plt.plot(rpy_es[:,1], 'g-', label='es pitch') -# plt.plot(rpy_es[:,2], 'b-', label='es yaw') -# plt.plot(rpy_gt[:,0], 'r--', label='gt roll') -# plt.plot(rpy_gt[:,1], 'g--', label='gt pitch') -# plt.plot(rpy_gt[:,2], 'b--', label='gt yaw') -# plt.legend() -# plt.figure() -# plt.plot(t_gt[:,0], 'r-', label='es x') -# plt.plot(t_gt[:,1], 'g-', label='es y') -# plt.plot(t_gt[:,2], 'b-', label='es z') -# plt.plot(t_es[:,0], 'r--', label='gt x') -# plt.plot(t_es[:,1], 'g--', label='gt y') -# plt.plot(t_es[:,2], 'b--', label='gt z') -# plt.legend() -# plt.figure() -# plt.plot(error,'-g') -# -# print 'e_rms = ' + str(np.sqrt(np.dot(error,error) / len(error))) -# print 'e_mean = ' + str(np.mean(error)) -# print 'e_median = ' + str(np.median(error)) -# print 'e_std = ' + str(np.std(error)) - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/__init__.py b/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/__init__.py deleted file mode 100644 index 633f866..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -# -*- coding: utf-8 -*- - diff --git a/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/associate.py b/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/associate.py deleted file mode 100755 index 361cdd5..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/associate.py +++ /dev/null @@ -1,130 +0,0 @@ -#!/usr/bin/python -# Software License Agreement (BSD License) -# -# Copyright (c) 2013, Juergen Sturm, TUM -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above -# copyright notice, this list of conditions and the following -# disclaimer in the documentation and/or other materials provided -# with the distribution. -# * Neither the name of TUM nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# -# Requirements: -# sudo apt-get install python-argparse - -""" -The Kinect provides the color and depth images in an un-synchronized way. This means that the set of time stamps from the color images do not intersect with those of the depth images. Therefore, we need some way of associating color images to depth images. - -For this purpose, you can use the ''associate.py'' script. It reads the time stamps from the rgb.txt file and the depth.txt file, and joins them by finding the best matches. -""" - -import argparse -import sys -import os -import numpy - - -def read_file_list(filename): - """ - Reads a trajectory from a text file. - - File format: - The file format is "stamp d1 d2 d3 ...", where stamp denotes the time stamp (to be matched) - and "d1 d2 d3.." is arbitary data (e.g., a 3D position and 3D orientation) associated to this timestamp. - - Input: - filename -- File name - - Output: - dict -- dictionary of (stamp,data) tuples - - """ - file = open(filename) - data = file.read() - lines = data.replace(","," ").replace("\t"," ").split("\n") - list = [[v.strip() for v in line.split(" ") if v.strip()!=""] for line in lines if len(line)>0 and line[0]!="#"] - list = [(float(l[0]),l[1:]) for l in list if len(l)>1] - return dict(list) - -def associate(first_list, second_list,offset,max_difference): - """ - Associate two dictionaries of (stamp,data). As the time stamps never match exactly, we aim - to find the closest match for every input tuple. - - Input: - first_list -- first dictionary of (stamp,data) tuples - second_list -- second dictionary of (stamp,data) tuples - offset -- time offset between both dictionaries (e.g., to model the delay between the sensors) - max_difference -- search radius for candidate generation - - Output: - matches -- list of matched tuples ((stamp1,data1),(stamp2,data2)) - - """ - first_keys = first_list.keys() - second_keys = second_list.keys() - potential_matches = [(abs(a - (b + offset)), a, b) - for a in first_keys - for b in second_keys - if abs(a - (b + offset)) < max_difference] - potential_matches.sort() - matches = [] - for diff, a, b in potential_matches: - if a in first_keys and b in second_keys: - first_keys.remove(a) - second_keys.remove(b) - matches.append((a, b)) - - matches.sort() - return matches - -if __name__ == '__main__': - - # parse command line - parser = argparse.ArgumentParser(description=''' - This script takes two data files with timestamps and associates them - ''') - parser.add_argument('first_file', help='estimated trajectory (format: timestamp data)') - parser.add_argument('second_file', help='groundtruth (format: timestamp data)') - parser.add_argument('--offset', help='time offset added to the timestamps of the second file (default: 0.0)',default=0.0) - parser.add_argument('--max_difference', help='maximally allowed time difference for matching entries (default: 0.02)',default=0.02) - args = parser.parse_args() - - first_list = read_file_list(args.first_file) - second_list = read_file_list(args.second_file) - - matches = associate(first_list, second_list,float(args.offset),float(args.max_difference)) - - filename = 'groundtruth_matched.txt' - associates_file = open(filename, 'w') - for a,b in matches: - img = first_list[a] - pos = second_list[b] - associates_file.write('%.6f %s %s %s %s %s %s %s %s\n' % - (a, img[0], - pos[0], pos[1], pos[2], - pos[3], pos[4], pos[5], pos[6])) - print('Wrote matches to file: ' + filename) - diff --git a/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/evaluate_ate.py b/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/evaluate_ate.py deleted file mode 100755 index a8b2ca9..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/evaluate_ate.py +++ /dev/null @@ -1,194 +0,0 @@ -#!/usr/bin/python -# Software License Agreement (BSD License) -# -# Copyright (c) 2013, Juergen Sturm, TUM -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above -# copyright notice, this list of conditions and the following -# disclaimer in the documentation and/or other materials provided -# with the distribution. -# * Neither the name of TUM nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# -# Requirements: -# sudo apt-get install python-argparse - -""" -This script computes the absolute trajectory error from the ground truth -trajectory and the estimated trajectory. -""" - -import sys -import numpy -import argparse -import associate - -def align(model,data): - """Align two trajectories using the method of Horn (closed-form). - - Input: - model -- first trajectory (3xn) - data -- second trajectory (3xn) - - Output: - rot -- rotation matrix (3x3) - trans -- translation vector (3x1) - trans_error -- translational error per point (1xn) - - """ - numpy.set_printoptions(precision=3,suppress=True) - model_zerocentered = model - model.mean(1) - data_zerocentered = data - data.mean(1) - - W = numpy.zeros( (3,3) ) - for column in range(model.shape[1]): - W += numpy.outer(model_zerocentered[:,column],data_zerocentered[:,column]) - U,d,Vh = numpy.linalg.linalg.svd(W.transpose()) - S = numpy.matrix(numpy.identity( 3 )) - if(numpy.linalg.det(U) * numpy.linalg.det(Vh)<0): - S[2,2] = -1 - rot = U*S*Vh - trans = data.mean(1) - rot * model.mean(1) - - model_aligned = rot * model + trans - alignment_error = model_aligned - data - - trans_error = numpy.sqrt(numpy.sum(numpy.multiply(alignment_error,alignment_error),0)).A[0] - - return rot,trans,trans_error - -def plot_traj(ax,stamps,traj,style,color,label): - """ - Plot a trajectory using matplotlib. - - Input: - ax -- the plot - stamps -- time stamps (1xn) - traj -- trajectory (3xn) - style -- line style - color -- line color - label -- plot legend - - """ - stamps.sort() - interval = numpy.median([s-t for s,t in zip(stamps[1:],stamps[:-1])]) - x = [] - y = [] - last = stamps[0] - for i in range(len(stamps)): - if stamps[i]-last < 2*interval: - x.append(traj[i][0]) - y.append(traj[i][1]) - elif len(x)>0: - ax.plot(x,y,style,color=color,label=label) - label="" - x=[] - y=[] - last= stamps[i] - if len(x)>0: - ax.plot(x,y,style,color=color,label=label) - - -if __name__=="__main__": - # parse command line - parser = argparse.ArgumentParser(description=''' - This script computes the absolute trajectory error from the ground truth trajectory and the estimated trajectory. - ''') - parser.add_argument('first_file', help='ground truth trajectory (format: timestamp tx ty tz qx qy qz qw)') - parser.add_argument('second_file', help='estimated trajectory (format: timestamp tx ty tz qx qy qz qw)') - parser.add_argument('--offset', help='time offset added to the timestamps of the second file (default: 0.0)',default=0.0) - parser.add_argument('--scale', help='scaling factor for the second trajectory (default: 1.0)',default=1.0) - parser.add_argument('--max_difference', help='maximally allowed time difference for matching entries (default: 0.02)',default=0.02) - parser.add_argument('--save', help='save aligned second trajectory to disk (format: stamp2 x2 y2 z2)') - parser.add_argument('--save_associations', help='save associated first and aligned second trajectory to disk (format: stamp1 x1 y1 z1 stamp2 x2 y2 z2)') - parser.add_argument('--plot', help='plot the first and the aligned second trajectory to an image (format: png)') - parser.add_argument('--verbose', help='print all evaluation data (otherwise, only the RMSE absolute translational error in meters after alignment will be printed)', action='store_true') - args = parser.parse_args() - - first_list = associate.read_file_list(args.first_file) - second_list = associate.read_file_list(args.second_file) - - matches = associate.associate(first_list, second_list, float(args.offset), float(args.max_difference)) - if len(matches)<2: - sys.exit("Couldn't find matching timestamp pairs between groundtruth and estimated trajectory! Did you choose the correct sequence?") - - - first_xyz = numpy.matrix([[float(value) for value in first_list[a][0:3]] for a,b in matches]).transpose() - second_xyz = numpy.matrix([[float(value)*float(args.scale) for value in second_list[b][0:3]] for a,b in matches]).transpose() - rot,trans,trans_error = align(second_xyz,first_xyz) - - second_xyz_aligned = rot * second_xyz + trans - - first_stamps = first_list.keys() - first_stamps.sort() - first_xyz_full = numpy.matrix([[float(value) for value in first_list[b][0:3]] for b in first_stamps]).transpose() - - second_stamps = second_list.keys() - second_stamps.sort() - second_xyz_full = numpy.matrix([[float(value)*float(args.scale) for value in second_list[b][0:3]] for b in second_stamps]).transpose() - second_xyz_full_aligned = rot * second_xyz_full + trans - - if args.verbose: - print "compared_pose_pairs %d pairs"%(len(trans_error)) - - print "absolute_translational_error.rmse %f m"%numpy.sqrt(numpy.dot(trans_error,trans_error) / len(trans_error)) - print "absolute_translational_error.mean %f m"%numpy.mean(trans_error) - print "absolute_translational_error.median %f m"%numpy.median(trans_error) - print "absolute_translational_error.std %f m"%numpy.std(trans_error) - print "absolute_translational_error.min %f m"%numpy.min(trans_error) - print "absolute_translational_error.max %f m"%numpy.max(trans_error) - else: - print "%f"%numpy.sqrt(numpy.dot(trans_error,trans_error) / len(trans_error)) - - if args.save_associations: - file = open(args.save_associations,"w") - file.write("\n".join(["%f %f %f %f %f %f %f %f"%(a,x1,y1,z1,b,x2,y2,z2) for (a,b),(x1,y1,z1),(x2,y2,z2) in zip(matches,first_xyz.transpose().A,second_xyz_aligned.transpose().A)])) - file.close() - - if args.save: - file = open(args.save,"w") - file.write("\n".join(["%f "%stamp+" ".join(["%f"%d for d in line]) for stamp,line in zip(second_stamps,second_xyz_full_aligned.transpose().A)])) - file.close() - - if args.plot: - import matplotlib - matplotlib.use('Agg') - import matplotlib.pyplot as plt - - fig = plt.figure() - ax = fig.add_subplot(111) - plot_traj(ax,first_stamps,first_xyz_full.transpose().A,'-',"black","ground truth") - plot_traj(ax,second_stamps,second_xyz_full_aligned.transpose().A,'-',"blue","estimated") - - label="difference" - for (a,b),(x1,y1,z1),(x2,y2,z2) in zip(matches,first_xyz.transpose().A,second_xyz_aligned.transpose().A): - ax.plot([x1,x2],[y1,y2],'-',color="red",label=label) - label="" - - ax.legend() - - ax.set_xlabel('x [m]') - ax.set_ylabel('y [m]') - plt.savefig(args.plot,dpi=90) - diff --git a/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/evaluate_rpe.py b/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/evaluate_rpe.py deleted file mode 100755 index fb42e4a..0000000 --- a/CPU_version/svo_analysis/src/svo_analysis/tum_benchmark_tools/evaluate_rpe.py +++ /dev/null @@ -1,382 +0,0 @@ -#!/usr/bin/python -# Software License Agreement (BSD License) -# -# Copyright (c) 2013, Juergen Sturm, TUM -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above -# copyright notice, this list of conditions and the following -# disclaimer in the documentation and/or other materials provided -# with the distribution. -# * Neither the name of TUM nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -""" -This script computes the relative pose error from the ground truth trajectory -and the estimated trajectory. -""" - -import argparse -import random -import numpy -import sys - -_EPS = numpy.finfo(float).eps * 4.0 - -def transform44(l): - """ - Generate a 4x4 homogeneous transformation matrix from a 3D point and unit quaternion. - - Input: - l -- tuple consisting of (stamp,tx,ty,tz,qx,qy,qz,qw) where - (tx,ty,tz) is the 3D position and (qx,qy,qz,qw) is the unit quaternion. - - Output: - matrix -- 4x4 homogeneous transformation matrix - """ - t = l[1:4] - q = numpy.array(l[4:8], dtype=numpy.float64, copy=True) - nq = numpy.dot(q, q) - if nq < _EPS: - return numpy.array(( - ( 1.0, 0.0, 0.0, t[0]) - ( 0.0, 1.0, 0.0, t[1]) - ( 0.0, 0.0, 1.0, t[2]) - ( 0.0, 0.0, 0.0, 1.0) - ), dtype=numpy.float64) - q *= numpy.sqrt(2.0 / nq) - q = numpy.outer(q, q) - return numpy.array(( - (1.0-q[1, 1]-q[2, 2], q[0, 1]-q[2, 3], q[0, 2]+q[1, 3], t[0]), - ( q[0, 1]+q[2, 3], 1.0-q[0, 0]-q[2, 2], q[1, 2]-q[0, 3], t[1]), - ( q[0, 2]-q[1, 3], q[1, 2]+q[0, 3], 1.0-q[0, 0]-q[1, 1], t[2]), - ( 0.0, 0.0, 0.0, 1.0) - ), dtype=numpy.float64) - -def read_trajectory(filename, matrix=True): - """ - Read a trajectory from a text file. - - Input: - filename -- file to be read - matrix -- convert poses to 4x4 matrices - - Output: - dictionary of stamped 3D poses - """ - file = open(filename) - data = file.read() - lines = data.replace(","," ").replace("\t"," ").split("\n") - list = [[float(v.strip()) for v in line.split(" ") if v.strip()!=""] for line in lines if len(line)>0 and line[0]!="#"] - list_ok = [] - for i,l in enumerate(list): - if l[4:8]==[0,0,0,0]: - continue - isnan = False - for v in l: - if numpy.isnan(v): - isnan = True - break - if isnan: - sys.stderr.write("Warning: line %d of file '%s' has NaNs, skipping line\n"%(i,filename)) - continue - list_ok.append(l) - if matrix : - traj = dict([(l[0],transform44(l[0:])) for l in list_ok]) - else: - traj = dict([(l[0],l[1:8]) for l in list_ok]) - return traj - -def find_closest_index(L,t): - """ - Find the index of the closest value in a list. - - Input: - L -- the list - t -- value to be found - - Output: - index of the closest element - """ - beginning = 0 - difference = abs(L[0] - t) - best = 0 - end = len(L) - while beginning < end: - middle = int((end+beginning)/2) - if abs(L[middle] - t) < difference: - difference = abs(L[middle] - t) - best = middle - if t == L[middle]: - return middle - elif L[middle] > t: - end = middle - else: - beginning = middle + 1 - return best - -def ominus(a,b): - """ - Compute the relative 3D transformation between a and b. - - Input: - a -- first pose (homogeneous 4x4 matrix) - b -- second pose (homogeneous 4x4 matrix) - - Output: - Relative 3D transformation from a to b. - """ - return numpy.dot(numpy.linalg.inv(a),b) - -def scale(a,scalar): - """ - Scale the translational components of a 4x4 homogeneous matrix by a scale factor. - """ - return numpy.array( - [[a[0,0], a[0,1], a[0,2], a[0,3]*scalar], - [a[1,0], a[1,1], a[1,2], a[1,3]*scalar], - [a[2,0], a[2,1], a[2,2], a[2,3]*scalar], - [a[3,0], a[3,1], a[3,2], a[3,3]]] - ) - -def compute_distance(transform): - """ - Compute the distance of the translational component of a 4x4 homogeneous matrix. - """ - return numpy.linalg.norm(transform[0:3,3]) - -def compute_angle(transform): - """ - Compute the rotation angle from a 4x4 homogeneous matrix. - """ - # an invitation to 3-d vision, p 27 - return numpy.arccos( min(1,max(-1, (numpy.trace(transform[0:3,0:3]) - 1)/2) )) - -def distances_along_trajectory(traj): - """ - Compute the translational distances along a trajectory. - """ - keys = traj.keys() - keys.sort() - motion = [ominus(traj[keys[i+1]],traj[keys[i]]) for i in range(len(keys)-1)] - distances = [0] - sum = 0 - for t in motion: - sum += compute_distance(t) - distances.append(sum) - return distances - -def rotations_along_trajectory(traj,scale): - """ - Compute the angular rotations along a trajectory. - """ - keys = traj.keys() - keys.sort() - motion = [ominus(traj[keys[i+1]],traj[keys[i]]) for i in range(len(keys)-1)] - distances = [0] - sum = 0 - for t in motion: - sum += compute_angle(t)*scale - distances.append(sum) - return distances - - -def evaluate_trajectory(traj_gt,traj_est,param_max_pairs=10000,param_fixed_delta=False,param_delta=1.00,param_delta_unit="s",param_offset=0.00,param_scale=1.00): - """ - Compute the relative pose error between two trajectories. - - Input: - traj_gt -- the first trajectory (ground truth) - traj_est -- the second trajectory (estimated trajectory) - param_max_pairs -- number of relative poses to be evaluated - param_fixed_delta -- false: evaluate over all possible pairs - true: only evaluate over pairs with a given distance (delta) - param_delta -- distance between the evaluated pairs - param_delta_unit -- unit for comparison: - "s": seconds - "m": meters - "rad": radians - "deg": degrees - "f": frames - param_offset -- time offset between two trajectories (to model the delay) - param_scale -- scale to be applied to the second trajectory - - Output: - list of compared poses and the resulting translation and rotation error - """ - stamps_gt = list(traj_gt.keys()) - stamps_est = list(traj_est.keys()) - stamps_gt.sort() - stamps_est.sort() - - stamps_est_return = [] - for t_est in stamps_est: - t_gt = stamps_gt[find_closest_index(stamps_gt,t_est + param_offset)] - t_est_return = stamps_est[find_closest_index(stamps_est,t_gt - param_offset)] - t_gt_return = stamps_gt[find_closest_index(stamps_gt,t_est_return + param_offset)] - if not t_est_return in stamps_est_return: - stamps_est_return.append(t_est_return) - if(len(stamps_est_return)<2): - raise Exception("Number of overlap in the timestamps is too small. Did you run the evaluation on the right files?") - - if param_delta_unit=="s": - index_est = list(traj_est.keys()) - index_est.sort() - elif param_delta_unit=="m": - index_est = distances_along_trajectory(traj_est) - elif param_delta_unit=="rad": - index_est = rotations_along_trajectory(traj_est,1) - elif param_delta_unit=="deg": - index_est = rotations_along_trajectory(traj_est,180/numpy.pi) - elif param_delta_unit=="f": - index_est = range(len(traj_est)) - else: - raise Exception("Unknown unit for delta: '%s'"%param_delta_unit) - - if not param_fixed_delta: - if(param_max_pairs==0 or len(traj_est)param_max_pairs): - pairs = random.sample(pairs,param_max_pairs) - - gt_interval = numpy.median([s-t for s,t in zip(stamps_gt[1:],stamps_gt[:-1])]) - gt_max_time_difference = 2*gt_interval - - result = [] - for i,j in pairs: - stamp_est_0 = stamps_est[i] - stamp_est_1 = stamps_est[j] - - stamp_gt_0 = stamps_gt[ find_closest_index(stamps_gt,stamp_est_0 + param_offset) ] - stamp_gt_1 = stamps_gt[ find_closest_index(stamps_gt,stamp_est_1 + param_offset) ] - - if(abs(stamp_gt_0 - (stamp_est_0 + param_offset)) > gt_max_time_difference or - abs(stamp_gt_1 - (stamp_est_1 + param_offset)) > gt_max_time_difference): - continue - - error44 = ominus( scale( - ominus( traj_est[stamp_est_1], traj_est[stamp_est_0] ),param_scale), - ominus( traj_gt[stamp_gt_1], traj_gt[stamp_gt_0] ) ) - - trans = compute_distance(error44) - rot = compute_angle(error44) - - result.append([stamp_est_0,stamp_est_1,stamp_gt_0,stamp_gt_1,trans,rot]) - - if len(result)<2: - raise Exception("Couldn't find matching timestamp pairs between groundtruth and estimated trajectory!") - - return result - -def percentile(seq,q): - """ - Return the q-percentile of a list - """ - seq_sorted = list(seq) - seq_sorted.sort() - return seq_sorted[int((len(seq_sorted)-1)*q)] - -if __name__ == '__main__': - random.seed(0) - - parser = argparse.ArgumentParser(description=''' - This script computes the relative pose error from the ground truth trajectory and the estimated trajectory. - ''') - parser.add_argument('groundtruth_file', help='ground-truth trajectory file (format: "timestamp tx ty tz qx qy qz qw")') - parser.add_argument('estimated_file', help='estimated trajectory file (format: "timestamp tx ty tz qx qy qz qw")') - parser.add_argument('--max_pairs', help='maximum number of pose comparisons (default: 10000, set to zero to disable downsampling)', default=10000) - parser.add_argument('--fixed_delta', help='only consider pose pairs that have a distance of delta delta_unit (e.g., for evaluating the drift per second/meter/radian)', action='store_true') - parser.add_argument('--delta', help='delta for evaluation (default: 1.0)',default=1.0) - parser.add_argument('--delta_unit', help='unit of delta (options: \'s\' for seconds, \'m\' for meters, \'rad\' for radians, \'f\' for frames; default: \'s\')',default='s') - parser.add_argument('--offset', help='time offset between ground-truth and estimated trajectory (default: 0.0)',default=0.0) - parser.add_argument('--scale', help='scaling factor for the estimated trajectory (default: 1.0)',default=1.0) - parser.add_argument('--save', help='text file to which the evaluation will be saved (format: stamp_est0 stamp_est1 stamp_gt0 stamp_gt1 trans_error rot_error)') - parser.add_argument('--plot', help='plot the result to a file (requires --fixed_delta, output format: png)') - parser.add_argument('--verbose', help='print all evaluation data (otherwise, only the mean translational error measured in meters will be printed)', action='store_true') - args = parser.parse_args() - - if args.plot and not args.fixed_delta: - sys.exit("The '--plot' option can only be used in combination with '--fixed_delta'") - - traj_gt = read_trajectory(args.groundtruth_file) - traj_est = read_trajectory(args.estimated_file) - - result = evaluate_trajectory(traj_gt, - traj_est, - int(args.max_pairs), - args.fixed_delta, - float(args.delta), - args.delta_unit, - float(args.offset), - float(args.scale)) - - stamps = numpy.array(result)[:,0] - trans_error = numpy.array(result)[:,4] - rot_error = numpy.array(result)[:,5] - - if args.save: - f = open(args.save,"w") - f.write("\n".join([" ".join(["%f"%v for v in line]) for line in result])) - f.close() - - if args.verbose: - print "compared_pose_pairs %d pairs"%(len(trans_error)) - - print "translational_error.rmse %f m"%numpy.sqrt(numpy.dot(trans_error,trans_error) / len(trans_error)) - print "translational_error.mean %f m"%numpy.mean(trans_error) - print "translational_error.median %f m"%numpy.median(trans_error) - print "translational_error.std %f m"%numpy.std(trans_error) - print "translational_error.min %f m"%numpy.min(trans_error) - print "translational_error.max %f m"%numpy.max(trans_error) - - print "rotational_error.rmse %f deg"%(numpy.sqrt(numpy.dot(rot_error,rot_error) / len(rot_error)) * 180.0 / numpy.pi) - print "rotational_error.mean %f deg"%(numpy.mean(rot_error) * 180.0 / numpy.pi) - print "rotational_error.median %f deg"%numpy.median(rot_error) - print "rotational_error.std %f deg"%(numpy.std(rot_error) * 180.0 / numpy.pi) - print "rotational_error.min %f deg"%(numpy.min(rot_error) * 180.0 / numpy.pi) - print "rotational_error.max %f deg"%(numpy.max(rot_error) * 180.0 / numpy.pi) - else: - print numpy.mean(trans_error) - - if args.plot: - import matplotlib - matplotlib.use('Agg') - import matplotlib.pyplot as plt - import matplotlib.pylab as pylab - fig = plt.figure() - ax = fig.add_subplot(111) - ax.plot(stamps - stamps[0],trans_error,'-',color="blue") - #ax.plot([t for t,e in err_rot],[e for t,e in err_rot],'-',color="red") - ax.set_xlabel('time [s]') - ax.set_ylabel('translational error [m]') - plt.savefig(args.plot,dpi=300) - - diff --git a/CPU_version/svo_msgs/.idea/.gitignore b/CPU_version/svo_msgs/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/CPU_version/svo_msgs/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/CPU_version/svo_msgs/.idea/misc.xml b/CPU_version/svo_msgs/.idea/misc.xml deleted file mode 100644 index 79b3c94..0000000 --- a/CPU_version/svo_msgs/.idea/misc.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/CPU_version/svo_msgs/.idea/modules.xml b/CPU_version/svo_msgs/.idea/modules.xml deleted file mode 100644 index 668cc83..0000000 --- a/CPU_version/svo_msgs/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/CPU_version/svo_msgs/.idea/svo_msgs.iml b/CPU_version/svo_msgs/.idea/svo_msgs.iml deleted file mode 100644 index f08604b..0000000 --- a/CPU_version/svo_msgs/.idea/svo_msgs.iml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/CPU_version/svo_msgs/.idea/vcs.xml b/CPU_version/svo_msgs/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/CPU_version/svo_msgs/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/CPU_version/svo_msgs/CMakeLists.txt b/CPU_version/svo_msgs/CMakeLists.txt deleted file mode 100644 index 6d1a371..0000000 --- a/CPU_version/svo_msgs/CMakeLists.txt +++ /dev/null @@ -1,33 +0,0 @@ -cmake_minimum_required(VERSION 2.8.3) -project(svo_msgs) - -# search for everything we need to build the messages, dont forget the message_generation -find_package(catkin REQUIRED COMPONENTS - message_generation - geometry_msgs - sensor_msgs -) - - - -# notify catkin to look at the previously found msg files -add_message_files( - FILES - Info.msg -) - -# build the header files from the msg files, and notify catkin about the dependencies -generate_messages( - DEPENDENCIES - geometry_msgs - sensor_msgs -) - -# export the dependencis of this package for who ever depends on us -catkin_package( - CATKIN_DEPENDS message_runtime geometry_msgs -) - -include_directories( - ${catkin_INCLUDE_DIRS} -) \ No newline at end of file diff --git a/CPU_version/svo_msgs/msg/DenseInput.msg b/CPU_version/svo_msgs/msg/DenseInput.msg deleted file mode 100644 index d36dee8..0000000 --- a/CPU_version/svo_msgs/msg/DenseInput.msg +++ /dev/null @@ -1,6 +0,0 @@ -Header header -uint32 frame_id -geometry_msgs/Pose pose -sensor_msgs/Image image -float32 min_depth -float32 max_depth \ No newline at end of file diff --git a/CPU_version/svo_msgs/msg/Feature.msg b/CPU_version/svo_msgs/msg/Feature.msg deleted file mode 100644 index 2972c32..0000000 --- a/CPU_version/svo_msgs/msg/Feature.msg +++ /dev/null @@ -1,5 +0,0 @@ -float32 u -float32 v -float32 x -float32 y -float32 z \ No newline at end of file diff --git a/CPU_version/svo_msgs/msg/Info.msg b/CPU_version/svo_msgs/msg/Info.msg deleted file mode 100644 index b962e1b..0000000 --- a/CPU_version/svo_msgs/msg/Info.msg +++ /dev/null @@ -1,6 +0,0 @@ -Header header -float32 processing_time -int32[] keyframes -int32 num_matches -int32 tracking_quality -int32 stage \ No newline at end of file diff --git a/CPU_version/svo_msgs/msg/NbvTrajectory.msg b/CPU_version/svo_msgs/msg/NbvTrajectory.msg deleted file mode 100644 index 03f0792..0000000 --- a/CPU_version/svo_msgs/msg/NbvTrajectory.msg +++ /dev/null @@ -1,2 +0,0 @@ -Header header -geometry_msgs/Pose[] trajectory \ No newline at end of file diff --git a/CPU_version/svo_msgs/package.xml b/CPU_version/svo_msgs/package.xml deleted file mode 100644 index b122e2d..0000000 --- a/CPU_version/svo_msgs/package.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - svo_msgs - 0.0.0 - Custom messages for svo - Christian Forster - BSD - catkin - - message_generation - geometry_msgs - sensor_msgs - - message_runtime - geometry_msgs - sensor_msgs - - - \ No newline at end of file diff --git a/CPU_version/vio_svo/.idea/.gitignore b/CPU_version/vio_svo/.idea/.gitignore deleted file mode 100644 index 73f69e0..0000000 --- a/CPU_version/vio_svo/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/CPU_version/vio_svo/.idea/misc.xml b/CPU_version/vio_svo/.idea/misc.xml deleted file mode 100644 index 79b3c94..0000000 --- a/CPU_version/vio_svo/.idea/misc.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/CPU_version/vio_svo/.idea/modules.xml b/CPU_version/vio_svo/.idea/modules.xml deleted file mode 100644 index eb3cacf..0000000 --- a/CPU_version/vio_svo/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/CPU_version/vio_svo/.idea/svo_ros.iml b/CPU_version/vio_svo/.idea/svo_ros.iml deleted file mode 100644 index f08604b..0000000 --- a/CPU_version/vio_svo/.idea/svo_ros.iml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/CPU_version/vio_svo/.idea/vcs.xml b/CPU_version/vio_svo/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/CPU_version/vio_svo/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/CPU_version/vio_svo/CMakeLists.txt b/CPU_version/vio_svo/CMakeLists.txt deleted file mode 100644 index 7fdf637..0000000 --- a/CPU_version/vio_svo/CMakeLists.txt +++ /dev/null @@ -1,90 +0,0 @@ -SET(PROJECT_NAME vio_svo) -PROJECT(${PROJECT_NAME}) -CMAKE_MINIMUM_REQUIRED (VERSION 2.8.3) -SET(CMAKE_BUILD_TYPE Release) # Release, RelWithDebInfo -SET(CMAKE_VERBOSE_MAKEFILE OFF) -SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/CMakeModules/") - -# Set build flags. Set IS_ARM on odroid board as environment variable -SET(CMAKE_CXX_FLAGS "-Wall -D_LINUX -D_REENTRANT -march=native -Wno-unused-variable -Wno-unused-but-set-variable -Wno-unknown-pragmas") -IF(DEFINED ENV{ARM_ARCHITECTURE}) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") -ELSE() - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmmx -msse -msse -msse2 -msse3 -mssse3") -ENDIF() -IF(CMAKE_COMPILER_IS_GNUCC) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") -ELSE() - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -ENDIF() -SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -O3 -fsee -fomit-frame-pointer -fno-signed-zeros -fno-math-errno -funroll-loops") - -# Add catkin and required ROS packages -FIND_PACKAGE(catkin REQUIRED COMPONENTS - geometry_msgs - roscpp - cmake_modules - nav_msgs - std_msgs - visualization_msgs - sensor_msgs - image_transport - cv_bridge - tf - svo - vikit_common - vikit_ros -) - -# Add plain cmake packages -FIND_PACKAGE(OpenCV 3 REQUIRED) -FIND_PACKAGE(Eigen REQUIRED) -FIND_PACKAGE(Sophus REQUIRED) -FIND_PACKAGE(Boost REQUIRED COMPONENTS thread) -FIND_PACKAGE(GTSAM REQUIRED) - -# notify catkin to look at the previously found msg files -add_message_files( - FILES - Info.msg -) - -# build the header files from the msg files, and notify catkin about the dependencies -generate_messages( - DEPENDENCIES - geometry_msgs - sensor_msgs -) -# Describe catkin Project -catkin_package( - DEPENDS Eigen OpenCV Sophus Boost - CATKIN_DEPENDS roscpp nav_msgs std_msgs visualization_msgs sensor_msgs image_transport cv_bridge tf svo vikit_common vikit_ros geometry_msgs - INCLUDE_DIRS include - LIBRARIES svo_visualizer -) - -# Include dirs -INCLUDE_DIRECTORIES( - include - ${Eigen_INCLUDE_DIRS} - ${OpenCV_INCLUDE_DIRS} - ${Sophus_INCLUDE_DIRS} - ${Boost_INCLUDE_DIRS} - ${catkin_INCLUDE_DIRS} -) - -# Set link libraries -LIST(APPEND LINK_LIBS - ${OpenCV_LIBS} - ${Sophus_LIBRARIES} - ${Boost_LIBRARIES} - ${catkin_LIBRARIES} -) - -# Create visualizer library -ADD_LIBRARY(svo_visualizer src/visualizer.cpp) -TARGET_LINK_LIBRARIES(svo_visualizer ${LINK_LIBS} gtsam) - -# Create Executables -ADD_EXECUTABLE(vo src/vo_node.cpp) -TARGET_LINK_LIBRARIES(vo svo_visualizer ${LINK_LIBS}) diff --git a/CPU_version/vio_svo/include/vio_svo/visualizer.h b/CPU_version/vio_svo/include/vio_svo/visualizer.h deleted file mode 100644 index 1b730ee..0000000 --- a/CPU_version/vio_svo/include/vio_svo/visualizer.h +++ /dev/null @@ -1,73 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#ifndef SVO_VISUALIZER_H_ -#define SVO_VISUALIZER_H_ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace svo { - -class Frame; -class Point; -class Map; -class FrameHandlerMono; - -typedef boost::shared_ptr FramePtr; - -/// This class bundles all functions to publish visualisation messages. -class Visualizer -{ -public: - ros::NodeHandle pnh_; - size_t trace_id_; - ros::Publisher pub_frames_; - ros::Publisher pub_points_; - ros::Publisher pub_pose_; - ros::Publisher pub_info_; - tf::TransformBroadcaster br_; - SE3 T_world_from_vision_; - - Visualizer(); - - ~Visualizer() {}; - - void publishMinimal( - const cv::Mat& img, - const FramePtr& frame, - const FrameHandlerMono& slam, - const double timestamp); - - void visualizeMarkers( - const FramePtr& frame, - const set& core_kfs, - const Map& map); - - void removeDeletedPts(const Map& map); - -}; - -} // end namespace svo - -#endif /* SVO_VISUALIZER_H_ */ diff --git a/CPU_version/vio_svo/launch/Px30.launch b/CPU_version/vio_svo/launch/Px30.launch deleted file mode 100644 index 7e3e73c..0000000 --- a/CPU_version/vio_svo/launch/Px30.launch +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/CPU_version/vio_svo/launch/live.launch b/CPU_version/vio_svo/launch/live.launch deleted file mode 100644 index 7cd0ad8..0000000 --- a/CPU_version/vio_svo/launch/live.launch +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/CPU_version/vio_svo/launch/test.launch b/CPU_version/vio_svo/launch/test.launch deleted file mode 100644 index 4bcd965..0000000 --- a/CPU_version/vio_svo/launch/test.launch +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/CPU_version/vio_svo/launch/unity.launch b/CPU_version/vio_svo/launch/unity.launch deleted file mode 100644 index ea34997..0000000 --- a/CPU_version/vio_svo/launch/unity.launch +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/CPU_version/vio_svo/msg/Info.msg b/CPU_version/vio_svo/msg/Info.msg deleted file mode 100644 index b962e1b..0000000 --- a/CPU_version/vio_svo/msg/Info.msg +++ /dev/null @@ -1,6 +0,0 @@ -Header header -float32 processing_time -int32[] keyframes -int32 num_matches -int32 tracking_quality -int32 stage \ No newline at end of file diff --git a/CPU_version/vio_svo/package.xml b/CPU_version/vio_svo/package.xml deleted file mode 100644 index c63372b..0000000 --- a/CPU_version/vio_svo/package.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - vio_svo - 0.1.0 - - Monocular Visual Odometry - ROS Nodes - - Christian Forster - Majid Geravand - GPLv3 - - - catkin - - - roscpp - cmake_modules - nav_msgs - std_msgs - visualization_msgs - sensor_msgs - image_transport - cv_bridge - tf - svo - vikit_common - vikit_ros - geometry_msgs - - - roscpp - nav_msgs - std_msgs - visualization_msgs - sensor_msgs - image_transport - cv_bridge - tf - svo - vikit_common - vikit_ros - geometry_msgs - \ No newline at end of file diff --git a/CPU_version/vio_svo/param/camera_atan.yaml b/CPU_version/vio_svo/param/camera_atan.yaml deleted file mode 100644 index e3c625c..0000000 --- a/CPU_version/vio_svo/param/camera_atan.yaml +++ /dev/null @@ -1,8 +0,0 @@ -cam_model: ATAN -cam_width: 752 -cam_height: 480 -cam_fx: 0.509326 -cam_fy: 0.796651 -cam_cx: 0.45905 -cam_cy: 0.510056 -cam_d0: 0.9320 \ No newline at end of file diff --git a/CPU_version/vio_svo/param/camera_pinhole.yaml b/CPU_version/vio_svo/param/camera_pinhole.yaml deleted file mode 100644 index 506a856..0000000 --- a/CPU_version/vio_svo/param/camera_pinhole.yaml +++ /dev/null @@ -1,11 +0,0 @@ -cam_model: Pinhole -cam_width: 640 -cam_height: 480 -cam_fx: 789.860721 -cam_fy: 790.097440 -cam_cx: 305.323524 -cam_cy: 260.464072 -cam_d0: 0.027470 -cam_d1: -0.051518 -cam_d2: 0.004375 -cam_d3: -0.004028 \ No newline at end of file diff --git a/CPU_version/vio_svo/param/px30.yaml b/CPU_version/vio_svo/param/px30.yaml deleted file mode 100644 index 10fa932..0000000 --- a/CPU_version/vio_svo/param/px30.yaml +++ /dev/null @@ -1,8 +0,0 @@ -cam_model: ATAN -cam_width: 640 -cam_height: 480 -cam_fx: 0.463632 -cam_fy: 0.823661 -cam_cx: 0.497465 -cam_cy: 0.498443 -cam_d0: 1.01687 \ No newline at end of file diff --git a/CPU_version/vio_svo/param/unity.yaml b/CPU_version/vio_svo/param/unity.yaml deleted file mode 100644 index 023f378..0000000 --- a/CPU_version/vio_svo/param/unity.yaml +++ /dev/null @@ -1,8 +0,0 @@ -cam_model: ATAN -cam_width: 1024 -cam_height: 720 -cam_fx: 1.98248 -cam_fy: 2.68212 -cam_cx: 0.502524 -cam_cy: 0.497744 -cam_d0: -0.000499999 \ No newline at end of file diff --git a/CPU_version/vio_svo/param/vo_accurate.yaml b/CPU_version/vio_svo/param/vo_accurate.yaml deleted file mode 100644 index 8446875..0000000 --- a/CPU_version/vio_svo/param/vo_accurate.yaml +++ /dev/null @@ -1,4 +0,0 @@ -grid_size: 20 -max_n_kfs: 50 -loba_num_iter: 10 -max_fts: 200 \ No newline at end of file diff --git a/CPU_version/vio_svo/param/vo_fast.yaml b/CPU_version/vio_svo/param/vo_fast.yaml deleted file mode 100644 index e33b18a..0000000 --- a/CPU_version/vio_svo/param/vo_fast.yaml +++ /dev/null @@ -1,13 +0,0 @@ -svo: - grid_size: 30 #Feature grid size of a cell in [px]. - max_n_kfs: 10 #Limit the number of keyframes in the map. This makes nslam essentially. a Visual Odometry. Set to 0 if unlimited number of keyframes are allowed. Minimum number of keyframes is 3. - loba_num_iter: 0 #Number of iterations in the local bundle adjustment. - quality_min_fts: 10 #If the number of tracked features drops below this threshold. Tracking quality is bad. - quality_max_drop_fts: 60 #If within one frame, this amount of features are dropped. Tracking quality is bad. - ACC_noise: 0.00001 #acc white noise in continuous - GYO_noise: 0.00001 #gyro white noise in continuous - IUC: 0.1 #integration uncertainty continuous - ABC: 0.1 #acc bias in continuous - GBC: 0.1 #gyro bias in continuous - EBP: 0.1 #error in the bias used for preintegration - NRP: 0.0000001 #noise used for projection in preintegration diff --git a/CPU_version/vio_svo/rqt.perspective b/CPU_version/vio_svo/rqt.perspective deleted file mode 100644 index 66dd7ef..0000000 --- a/CPU_version/vio_svo/rqt.perspective +++ /dev/null @@ -1,293 +0,0 @@ -{ - "keys": {}, - "groups": { - "pluginmanager": { - "keys": { - "running-plugins": { - "type": "repr", - "repr": "{u'rqt_rviz/RViz': [1], u'rqt_reconfigure/Param': [1], u'rqt_image_view/ImageView': [1], u'svo_rqt/Svo': [1]}" - } - }, - "groups": { - "plugin__rqt_rviz__RViz__1": { - "keys": {}, - "groups": { - "dock_widget__": { - "keys": { - "dockable": { - "type": "repr", - "repr": "True" - }, - "parent": { - "type": "repr", - "repr": "None" - } - }, - "groups": {} - } - } - }, - "plugin__rqt_robot_steering__RobotSteering__1": { - "keys": {}, - "groups": { - "dock_widget__RobotSteeringUi": { - "keys": { - "dockable": { - "type": "repr", - "repr": "u'true'" - }, - "parent": { - "type": "repr", - "repr": "None" - } - }, - "groups": {} - }, - "plugin": { - "keys": { - "topic": { - "type": "repr", - "repr": "u'/cmd_vel'" - }, - "vx_min": { - "type": "repr", - "repr": "u'-1'" - }, - "vw_min": { - "type": "repr", - "repr": "u'-3'" - }, - "vw_max": { - "type": "repr", - "repr": "u'3'" - }, - "vx_max": { - "type": "repr", - "repr": "u'1'" - } - }, - "groups": {} - } - } - }, - "plugin__rqt_reconfigure__Param__1": { - "keys": {}, - "groups": { - "dock_widget___plugincontainer_top_widget": { - "keys": { - "dockable": { - "type": "repr", - "repr": "True" - }, - "parent": { - "type": "repr", - "repr": "None" - } - }, - "groups": {} - }, - "plugin": { - "keys": { - "splitter": { - "type": "repr(QByteArray.hex)", - "repr(QByteArray.hex)": "QtCore.QByteArray('000000ff0000000000000002000000c00000006401000000060100000001')", - "pretty-print": " d " - }, - "_splitter": { - "type": "repr(QByteArray.hex)", - "repr(QByteArray.hex)": "QtCore.QByteArray('000000ff00000000000000020000013e0000006401000000090100000002')", - "pretty-print": " > d " - } - }, - "groups": {} - } - } - }, - "plugin__rqt_image_view__ImageView__1": { - "keys": {}, - "groups": { - "dock_widget__ImageViewWidget": { - "keys": { - "dockable": { - "type": "repr", - "repr": "True" - }, - "parent": { - "type": "repr", - "repr": "None" - } - }, - "groups": {} - }, - "plugin": { - "keys": { - "dynamic_range": { - "type": "repr", - "repr": "False" - }, - "max_range": { - "type": "repr", - "repr": "10.0" - }, - "topic": { - "type": "repr", - "repr": "u'/svo/image'" - }, - "zoom1": { - "type": "repr", - "repr": "False" - } - }, - "groups": {} - } - } - }, - "plugin__svo_rqt__Svo__1": { - "keys": {}, - "groups": { - "dock_widget__SvoWidget": { - "keys": { - "dockable": { - "type": "repr", - "repr": "True" - }, - "parent": { - "type": "repr", - "repr": "None" - } - }, - "groups": {} - }, - "dock_widget__SvoUi": { - "keys": { - "dockable": { - "type": "repr", - "repr": "u'true'" - }, - "parent": { - "type": "repr", - "repr": "None" - } - }, - "groups": {} - } - } - }, - "plugin__rqt_shell__Shell__1": { - "keys": {}, - "groups": { - "plugin": { - "keys": { - "shell_type": { - "type": "repr", - "repr": "u'0'" - } - }, - "groups": {} - } - } - }, - "plugin__rqt_console__Console__1": { - "keys": {}, - "groups": { - "plugin": { - "keys": { - "show_highlighted_only": { - "type": "repr", - "repr": "u'false'" - }, - "message_limit": { - "type": "repr", - "repr": "u'20000'" - }, - "exclude_filters": { - "type": "repr", - "repr": "u'severity'" - }, - "table_splitter": { - "type": "repr(QByteArray.hex)", - "repr(QByteArray.hex)": "QtCore.QByteArray('000000ff00000000000000020000004e000000ed01000000090100000002')", - "pretty-print": " N " - }, - "highlight_filters": { - "type": "repr", - "repr": "u'message'" - }, - "paused": { - "type": "repr", - "repr": "u'false'" - }, - "settings_exist": { - "type": "repr", - "repr": "u'true'" - }, - "filter_splitter": { - "type": "repr(QByteArray.hex)", - "repr(QByteArray.hex)": "QtCore.QByteArray('000000ff0000000000000002000000720000007201000000090100000002')", - "pretty-print": " r r " - } - }, - "groups": { - "exclude_filter_0": { - "keys": { - "enabled": { - "type": "repr", - "repr": "u'true'" - }, - "itemlist": { - "type": "repr", - "repr": "u''" - } - }, - "groups": {} - }, - "highlight_filter_0": { - "keys": { - "regex": { - "type": "repr", - "repr": "u'false'" - }, - "text": { - "type": "repr", - "repr": "u''" - }, - "enabled": { - "type": "repr", - "repr": "u'true'" - } - }, - "groups": {} - } - } - } - } - } - } - }, - "mainwindow": { - "keys": { - "geometry": { - "type": "repr(QByteArray.hex)", - "repr(QByteArray.hex)": "QtCore.QByteArray('01d9d0cb00010000000007a9fffffffc00001187000005a7000007b1000000180000117f0000059f000000000000')", - "pretty-print": " " - }, - "state": { - "type": "repr(QByteArray.hex)", - "repr(QByteArray.hex)": "QtCore.QByteArray('000000ff00000000fd0000000100000003000009cf00000559fc0100000005fb0000002c00730076006f005f007200710074005f005f00530076006f005f005f0031005f005f00530076006f005500690100000000000003890000000000000000fb0000006a007200710074005f0072006f0062006f0074005f007300740065006500720069006e0067005f005f0052006f0062006f0074005300740065006500720069006e0067005f005f0031005f005f0052006f0062006f0074005300740065006500720069006e00670055006901000000000000020b0000000000000000fc00000000000003530000022e00fffffffc0200000004fb0000003400730076006f005f007200710074005f005f00530076006f005f005f0031005f005f00530076006f0057006900640067006500740100000019000000a30000009900fffffffb0000004c007200710074005f0063006f006e0073006f006c0065005f005f0043006f006e0073006f006c0065005f005f0031005f005f0043006f006e0073006f006c006500570069006400670065007401000000c3000003b50000000000000000fb0000005a007200710074005f0069006d006100670065005f0076006900650077005f005f0049006d0061006700650056006900650077005f005f0031005f005f0049006d006100670065005600690065007700570069006400670065007401000000c2000002700000005100fffffffb0000006c007200710074005f007200650063006f006e006600690067007500720065005f005f0050006100720061006d005f005f0031005f005f005f0070006c007500670069006e0063006f006e007400610069006e00650072005f0074006f0070005f00770069006400670065007401000003380000023a0000010f00fffffffb00000026007200710074005f007200760069007a005f005f005200560069007a005f005f0031005f005f010000035900000676000000a700fffffffb00000040007200710074005f007300680065006c006c005f005f005300680065006c006c005f005f0031005f005f0058005400650072006d005700690064006700650074010000091c000000b30000000000000000000009cf0000000000000004000000040000000800000008fc00000001000000030000000100000036004d0069006e0069006d0069007a006500640044006f0063006b00570069006400670065007400730054006f006f006c0062006100720000000000ffffffff0000000000000000')", - "pretty-print": " ,svo_rqt__Svo__1__SvoUi jrqt_robot_steering__RobotSteering__1__RobotSteeringUi S . p Q 8 : Y v " - } - }, - "groups": { - "toolbar_areas": { - "keys": { - "MinimizedDockWidgetsToolbar": { - "type": "repr", - "repr": "8" - } - }, - "groups": {} - } - } - } - } -} \ No newline at end of file diff --git a/CPU_version/vio_svo/rviz_config.rviz b/CPU_version/vio_svo/rviz_config.rviz deleted file mode 100644 index 95d7c0e..0000000 --- a/CPU_version/vio_svo/rviz_config.rviz +++ /dev/null @@ -1,153 +0,0 @@ -Panels: - - Class: rviz/Displays - Help Height: 108 - Name: Displays - Property Tree Widget: - Expanded: - - /Global Options1 - - /Status1 - - /TF1 - - /Marker1 - - /Marker2 - - /Marker2/Namespaces1 - - /Image1 - Splitter Ratio: 0.5 - Tree Height: 680 - - Class: rviz/Selection - Name: Selection - - Class: rviz/Tool Properties - Expanded: - - /2D Pose Estimate1 - - /2D Nav Goal1 - - /Publish Point1 - Name: Tool Properties - Splitter Ratio: 0.588679 - - Class: rviz/Views - Expanded: - - /Current View1 - Name: Views - Splitter Ratio: 0.5 - - Class: rviz/Time - Experimental: false - Name: Time - SyncMode: 0 - SyncSource: Image -Visualization Manager: - Class: "" - Displays: - - Alpha: 0.5 - Cell Size: 1 - Class: rviz/Grid - Color: 160; 160; 164 - Enabled: true - Line Style: - Line Width: 0.03 - Value: Lines - Name: Grid - Normal Cell Count: 0 - Offset: - X: 0 - Y: 0 - Z: 0 - Plane: XY - Plane Cell Count: 10 - Reference Frame: - Value: true - - Class: rviz/TF - Enabled: false - Frame Timeout: 15 - Frames: - All Enabled: true - Marker Scale: 1 - Name: TF - Show Arrows: true - Show Axes: true - Show Names: true - Tree: - {} - Update Interval: 0 - Value: false - - Class: rviz/Marker - Enabled: true - Marker Topic: /svo/keyframes - Name: Marker - Namespaces: - cams: true - kfs: true - Queue Size: 100 - Value: true - - Class: rviz/Marker - Enabled: true - Marker Topic: /svo/points - Name: Marker - Namespaces: - pts: true - trajectory: true - Queue Size: 100 - Value: true - - Class: rviz/Image - Enabled: true - Image Topic: /svo/image - Max Value: 1 - Median window: 5 - Min Value: 0 - Name: Image - Normalize Range: true - Queue Size: 2 - Transport Hint: raw - Value: true - Enabled: true - Global Options: - Background Color: 255; 255; 255 - Fixed Frame: /world - Name: root - Tools: - - Class: rviz/Interact - Hide Inactive Objects: true - - Class: rviz/MoveCamera - - Class: rviz/Select - - Class: rviz/FocusCamera - - Class: rviz/Measure - - Class: rviz/SetInitialPose - Topic: /initialpose - - Class: rviz/SetGoal - Topic: /move_base_simple/goal - - Class: rviz/PublishPoint - Single click: true - Topic: /clicked_point - Value: true - Views: - Current: - Class: rviz/Orbit - Distance: 5.48911 - Focal Point: - X: 0.777511 - Y: 0.689927 - Z: -0.445833 - Name: Current View - Near Clip Distance: 0.01 - Pitch: 0.125204 - Target Frame: - Value: Orbit (rviz) - Yaw: 4.45215 - Saved: ~ -Window Geometry: - Displays: - collapsed: false - Height: 1416 - Hide Left Dock: false - Hide Right Dock: true - Image: - collapsed: false - QMainWindow State: 000000ff00000000fd0000000400000000000002cc00000542fc0200000009fb0000001200530065006c0065006300740069006f006e00000000280000009b0000006400fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb000000100044006900730070006c006100790073010000002800000355000000dd00fffffffb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261fb0000000a0049006d0061006700650100000383000001e70000001600ffffff000000010000010f000003dafc0200000003fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000000a005600690065007700730000000028000003da000000b000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000003ce0000003efc0100000002fb0000000800540069006d00650000000000000003ce000002f600fffffffb0000000800540069006d00650100000000000004500000000000000000000006fd0000054200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000 - Selection: - collapsed: false - Time: - collapsed: false - Tool Properties: - collapsed: false - Views: - collapsed: true - Width: 2511 - X: 1962 - Y: 24 diff --git a/CPU_version/vio_svo/src/visualizer.cpp b/CPU_version/vio_svo/src/visualizer.cpp deleted file mode 100644 index 901f9ef..0000000 --- a/CPU_version/vio_svo/src/visualizer.cpp +++ /dev/null @@ -1,127 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace svo { - -Visualizer:: -Visualizer() : - pnh_("~"), - trace_id_(0), - T_world_from_vision_(Matrix3d::Identity(), Vector3d::Zero()) -{ - // Init ROS Marker Publishers - pub_frames_ = pnh_.advertise("keyframes", 10); - pub_points_ = pnh_.advertise("points", 1000); - pub_pose_ = pnh_.advertise("pose",10); - pub_info_ = pnh_.advertise("info", 10); -} - -void Visualizer::publishMinimal( - const cv::Mat& img, - const FramePtr& frame, - const FrameHandlerMono& slam, - const double timestamp) -{ - ++trace_id_; - std_msgs::Header header_msg; - header_msg.frame_id = "/cam"; - header_msg.seq = trace_id_; - header_msg.stamp = ros::Time(timestamp); - - // publish info msg. - if(pub_info_.getNumSubscribers() > 0) - { - vio_svo::Info msg_info; - msg_info.header = header_msg; - msg_info.processing_time = slam.lastProcessingTime(); - msg_info.keyframes.reserve(slam.map().keyframes_.size()); - for(list::const_iterator it=slam.map().keyframes_.begin(); it!=slam.map().keyframes_.end(); ++it) - msg_info.keyframes.push_back((*it)->id_); - msg_info.stage = static_cast(slam.stage()); - msg_info.tracking_quality = static_cast(slam.trackingQuality()); - if(frame != NULL) - msg_info.num_matches = slam.lastNumObservations(); - else - msg_info.num_matches = 0; - pub_info_.publish(msg_info); - } - if(pub_pose_.getNumSubscribers() > 0 && slam.stage() == FrameHandlerBase::STAGE_DEFAULT_FRAME) - { - Quaterniond q; - Vector3d p; - Matrix Cov; - // publish cam in world frame (Estimated odometry in the worls frame) - SE3 T_world_from_cam(T_world_from_vision_*frame->T_f_w_.inverse());// do not confused with inverse. the T_f_w_ is the from camera to initial position with reference of camera - q = Quaterniond(T_world_from_cam.rotation_matrix()*T_world_from_vision_.rotation_matrix().transpose()); - p = T_world_from_cam.translation(); - Cov = T_world_from_cam.Adj()*frame->Cov_*T_world_from_cam.inverse().Adj(); - geometry_msgs::PoseWithCovarianceStampedPtr msg_pose(new geometry_msgs::PoseWithCovarianceStamped); - msg_pose->header = header_msg; - msg_pose->pose.pose.position.x = p[0]; - msg_pose->pose.pose.position.y = p[1]; - msg_pose->pose.pose.position.z = p[2]; - msg_pose->pose.pose.orientation.x = q.x(); - msg_pose->pose.pose.orientation.y = q.y(); - msg_pose->pose.pose.orientation.z = q.z(); - msg_pose->pose.pose.orientation.w = q.w(); - for(size_t i=0; i<36; ++i) - msg_pose->pose.covariance[i] = Cov(i%6, i/6); - pub_pose_.publish(msg_pose); - } -} - -void Visualizer::visualizeMarkers( - const FramePtr& frame, - const set& core_kfs, - const Map& map) -{ - if(frame == NULL) - return; - - vk::output_helper::publishTfTransform( - frame->T_f_w_*T_world_from_vision_.inverse(), - ros::Time(frame->timestamp_), "cam_pos", "world", br_); - - if(pub_frames_.getNumSubscribers() > 0 || pub_points_.getNumSubscribers() > 0) - { - vk::output_helper::publishPointMarker( - pub_points_, T_world_from_vision_*frame->pos(), "trajectory", - ros::Time::now(), trace_id_, 0, 0.006, Vector3d(0.,0.,0.5)); - removeDeletedPts(map); - } -} - -void Visualizer::removeDeletedPts(const Map& map) -{ - if(pub_points_.getNumSubscribers() > 0) - { - for(list::const_iterator it=map.trash_points_.begin(); it!=map.trash_points_.end(); ++it) - vk::output_helper::publishPointMarker(pub_points_, Vector3d(), "pts", ros::Time::now(), (*it)->id_, 2, 0.006, Vector3d()); - } -} - -} // end namespace svo diff --git a/CPU_version/vio_svo/src/vo_node.cpp b/CPU_version/vio_svo/src/vo_node.cpp deleted file mode 100644 index 9779f3e..0000000 --- a/CPU_version/vio_svo/src/vo_node.cpp +++ /dev/null @@ -1,148 +0,0 @@ -// This file is part of SVO - Semi-direct Visual Odometry. -// -// Copyright (C) 2014 Christian Forster -// (Robotics and Perception Group, University of Zurich, Switzerland). -// -// SVO is free software: you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the Free Software -// Foundation, either version 3 of the License, or any later version. -// -// SVO is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -namespace svo { - -/// SVO Interface -class VoNode -{ -public: - svo::FrameHandlerMono* vo_; - svo::Visualizer visualizer_; - bool publish_markers_; //!< publish only the minimal amount of info (choice for embedded devices) - vk::AbstractCamera* cam_; - FILE* logtime; - bool quit_; - boost::thread* imu_th; - VoNode(); - ~VoNode(); - void imgCb(const sensor_msgs::ImageConstPtr& msg); - void imuCb(const sensor_msgs::ImuPtr& imu); - void imu(); -private: - double* imu_; -}; - -VoNode::VoNode() : - vo_(NULL), - publish_markers_(vk::getParam("vio/publish_markers", true)), - cam_(NULL), - quit_(false) -{ - // Create Camera - imu_=(double *)calloc(static_cast(6), sizeof(double)); - if(!vk::camera_loader::loadFromRosNs("vio", cam_)) - throw std::runtime_error("Camera model not correctly specified."); - // Get initial position and orientation - visualizer_.T_world_from_vision_ = Sophus::SE3( - vk::rpy2dcm(Vector3d(vk::getParam("vio/init_rx", 0.0), - vk::getParam("vio/init_ry", 0.0), - vk::getParam("vio/init_rz", 0.0))), - Eigen::Vector3d(vk::getParam("vio/init_tx", 0.0), - vk::getParam("vio/init_ty", 0.0), - vk::getParam("vio/init_tz", 0.0))); - // Init VO and start - vo_ = new svo::FrameHandlerMono(cam_,visualizer_.T_world_from_vision_); - vo_->start(); - imu_th=new boost::thread(&VoNode::imu,this); - logtime = fopen((std::string(getenv("HOME"))+"/time.txt").c_str(), "w+"); - -} - -VoNode::~VoNode() -{ - quit_=true; - fclose(logtime); - imu_th->join(); - delete imu_th; - delete logtime; - delete vo_; - delete cam_; -} - -void VoNode::imgCb(const sensor_msgs::ImageConstPtr& msg) -{ - try { - auto start=std::chrono::steady_clock::now(); - cv::Mat img=cv_bridge::toCvShare(msg, "mono8")->image; - vo_->addImage(img, msg->header.stamp.toSec()); - visualizer_.publishMinimal(img, vo_->lastFrame(), *vo_, msg->header.stamp.toSec()); - if(publish_markers_ && vo_->stage() != FrameHandlerBase::STAGE_PAUSED) - visualizer_.visualizeMarkers(vo_->lastFrame(), vo_->coreKeyframes(), vo_->map()); - if(vo_->stage() == FrameHandlerMono::STAGE_PAUSED) - usleep(100000); - fprintf(logtime, "%s\n",std::to_string(std::chrono::duration(std::chrono::steady_clock::now()-start).count()).c_str()); - - } catch (cv_bridge::Exception& e) { - ROS_ERROR("cv_bridge exception: %s", e.what()); - } -} -void VoNode::imuCb(const sensor_msgs::ImuPtr &imu) { - double imu_in[6]; - imu_in[0] = 0.1*imu_[0]+0.9*imu->linear_acceleration.x; - imu_in[1] = 0.1*imu_[1]+0.9*imu->linear_acceleration.y; - imu_in[2] = 0.1*imu_[2]+0.9*imu->linear_acceleration.z; - imu_in[3] = 0.1*imu_[3]+0.9*imu->angular_velocity.x; - imu_in[4] = 0.1*imu_[4]+0.9*imu->angular_velocity.y; - imu_in[5] = 0.1*imu_[5]+0.9*imu->angular_velocity.z; - memcpy(imu_, imu_in, static_cast(6*sizeof(double))); - vo_->imu_integPtr_->update(imu_in); -} -void VoNode::imu(){ - ros::NodeHandle nh; - // subscribe to cam msgs - image_transport::ImageTransport it(nh); - image_transport::Subscriber it_sub = it.subscribe(vk::getParam("vio/cam_topic", "camera/image_raw"), 1, &svo::VoNode::imgCb, this); - // start processing callbacks - while(ros::ok() && !quit_) - { - ros::spinOnce(); - } - -} -} // namespace svo - -int main(int argc, char **argv) -{ - ros::init(argc, argv, "vio"); - svo::VoNode vo_node; - ros::NodeHandle nh; - ros::Subscriber imu_sub=nh.subscribe(vk::getParam("vio/imu_topic", "imu/raw"),1,&svo::VoNode::imuCb, &vo_node); - // start processing callbacks - while(ros::ok() && !vo_node.quit_) - { - ros::spinOnce(); - usleep(1000); - // TODO check when last image was processed. when too long ago. publish warning that no msgs are received! - } - printf("SVO terminated.\n"); - return 0; -} diff --git a/GPU_version/vio/include/vio/reprojector.h b/GPU_version/vio/include/vio/reprojector.h index 1a60333..0d757fc 100644 --- a/GPU_version/vio/include/vio/reprojector.h +++ b/GPU_version/vio/include/vio/reprojector.h @@ -19,6 +19,9 @@ #include #include +#include +#include +#include namespace vk { class AbstractCamera; @@ -44,7 +47,7 @@ public: size_t max_n_kfs; //!< max number of keyframes to reproject from bool find_match_direct; Options() - : max_n_kfs(10), + : max_n_kfs(30), find_match_direct(true) {} } options_; @@ -52,7 +55,7 @@ public: size_t n_matches_; size_t n_trials_; - Reprojector(vk::AbstractCamera* cam, Map& map); + Reprojector(vk::AbstractCamera* cam, Map& map, opencl* kernel); ~Reprojector(); @@ -94,6 +97,9 @@ private: void resetGrid(); bool reprojectCell(Cell& cell, FramePtr frame); bool reprojectPoint(FramePtr frame, Point* point); + +protected: + opencl* gpu_freak; }; } // namespace vio diff --git a/GPU_version/vio/kernel/freak.cl b/GPU_version/vio/kernel/freak.cl new file mode 100644 index 0000000..c3f6010 --- /dev/null +++ b/GPU_version/vio/kernel/freak.cl @@ -0,0 +1,129 @@ +void meanIntensity( image2d_t _image, image2d_t _integral, float kp_x, float kp_y, + int scale, int rot, int* point, float3* patternLookupPtr, uchar* output) +{ + // Prepare a suitable OpenCL image sampler. + sampler_t const sampler = CLK_ADDRESS_CLAMP | CLK_FILTER_NEAREST; + // get point position in image + float3* FreakPoint = patternLookupPtr + (scale * FREAK_NB_ORIENTATION * FREAK_NB_POINTS + rot * FREAK_NB_POINTS + (*point)); + float xf = FreakPoint->x + kp_x; + float yf = FreakPoint->y + kp_y; + int x = (int)xf; + int y = (int)yf; + + // get the sigma: + float radius = FreakPoint->z;//sigma + + // calculate output: + if( radius < 0.5 ) + { + // interpolation multipliers: + const int r_x = (int)((xf - x) * 1024); + const int r_y = (int)((yf - y) * 1024); + const int r_x_1 = (1024 - r_x); + const int r_y_1 = (1024 - r_y); + uint ret_val; + // linear interpolation: + ret_val = (r_x_1 * r_y_1 * (int)(read_imageui(_image, sampler, (int2)(y , x ))).x) + + (r_x * r_y_1 * (int)(read_imageui(_image, sampler, (int2)(y , x+1))).x) + + (r_x_1 * r_y * (int)(read_imageui(_image, sampler, (int2)(y+1, x ))).x) + + (r_x * r_y * (int)(read_imageui(_image, sampler, (int2)(y+1, x+1))).x); + // return the rounded mean + ret_val += 2 * 1024 * 1024; + output[*point] = (uchar)(ret_val / (4 * 1024 * 1024)); + } + + // calculate borders + const int x_left = round(xf - radius); + const int y_top = round(yf - radius); + const int x_right = round(xf + radius + 1); // integral image is 1px wider + const int y_bottom = round(yf + radius + 1); // integral image is 1px higher + int ret_val; + + ret_val = read_imageui(_integral, sampler, (int2)(y_bottom, x_right)).x; // bottom right corner + ret_val -= read_imageui(_integral, sampler, (int2)(y_bottom, x_left)).x; // bottom left corner + ret_val += read_imageui(_integral, sampler, (int2)(y_top, x_left)).x; // top left corner + ret_val -= read_imageui(_integral, sampler, (int2)(y_top, x_right)).x; // top right corner + const int area = (x_right - x_left) * (y_bottom - y_top); + ret_val = (ret_val + area / 2) / area; + output[*point] = (uchar)(ret_val); +} +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +__kernel void freak( + __global image2d_t* image, // grayescale image + __global image2d_t* imgIntegral, + __global float4* keypoints, // ptx, pty, angle + __global uchar* descriptors, // kp_size * (64 = NB_PAIRS/8) - CV_8U with zero values + __global int* patternSizes, // array size : NB_SCALES = 64 + __global int4* orientationPairs, // array size : FREAK_NB_ORIENTATION = 256 + __global float3* patternLookup, // array size : NB_SCALES(64) * FREAK_NB_ORIENTATION(256) * FREAK_NB_POINTS(43) + __global uchar2* descriptionPairs, // array size : NB_PAIRS = 512 + __global int* nOctaves, + __global int* kpScaleIdx //array size = kp_size - used to save pattern scale index corresponding to each keypoints + ) +{ + const float sizeCst = (float)(NB_SCALES / (FREAK_LOG2 * *nOctaves)); + uchar pointsValue[FREAK_NB_POINTS]; + int thetaIdx = 0; + int direction0; + int direction1; + + int k = get_global_id(0); + + kpScaleIdx[k] = max( (int)(log(7.0 / FREAK_SMALLEST_KP_SIZE) * sizeCst + 0.5) ,0); + if( kpScaleIdx[k] >= NB_SCALES ) + kpScaleIdx[k] = NB_SCALES - 1; + + if( keypoints[k].x <= patternSizes[kpScaleIdx[k]] || // check if the description at this specific position and scale fits inside the image + keypoints[k].y <= patternSizes[kpScaleIdx[k]] || + keypoints[k].x >= get_image_dim(image[(int)keypoints[k].w]).y - patternSizes[kpScaleIdx[k]] || + keypoints[k].y >= get_image_dim(image[(int)keypoints[k].w]).x - patternSizes[kpScaleIdx[k]]) + return; + + // get the points intensity value in the un-rotated pattern + for( int i = FREAK_NB_POINTS; i--; ) + { + meanIntensity(image[(int)keypoints[k].w], imgIntegral[(int)keypoints[k].w], keypoints[k].x, keypoints[k].y, + *(kpScaleIdx + k), 0, &i, patternLookup, pointsValue); + } + direction0 = 0; + direction1 = 0; + for( int m = 45; m--; ) + { + // iterate through the orientation pairs + const int delta = (pointsValue[ orientationPairs[m].w ] - pointsValue[ orientationPairs[m].x ]); + direction0 += delta * (orientationPairs[m].y) / 2048; // weight_dx + direction1 += delta * (orientationPairs[m].z) / 2048; // weight_dy + } + + thetaIdx = round(FREAK_NB_ORIENTATION * + (float)(atan2((float)direction1,(float)direction0) * (180.0 / 3.141592653589793238462643383279502884197169399375)) * + (1 / 360.0)); + + if( thetaIdx < 0 ) + thetaIdx += FREAK_NB_ORIENTATION; + + if( thetaIdx >= FREAK_NB_ORIENTATION ) + thetaIdx -= FREAK_NB_ORIENTATION; + + // extract descriptor at the computed orientation + for( int i = FREAK_NB_POINTS; i--; ) + { + meanIntensity(image[(int)keypoints[k].w], imgIntegral[(int)keypoints[k].w], keypoints[k].x, keypoints[k].y, + *(kpScaleIdx + k), thetaIdx, &i, patternLookup, pointsValue); + } + + // Extract descriptor + int cnt = 0; + for( int n = 0; n<4; n++ ) + { + for (int m = 8; m >= 1; m--) + { + for(int kk = (n*16)+15; kk >= (n*16); --kk, ++cnt) + { + descriptors[(int)keypoints[k].w*300*64 + (k * 64) + kk] *= 2; + if (pointsValue[(int)descriptionPairs[cnt].x] >= pointsValue[(int)descriptionPairs[cnt].y]) + descriptors[(int)keypoints[k].w*300*64 + (k * 64) + kk] += 1; + } + } + } +} \ No newline at end of file diff --git a/GPU_version/vio/kernel/integral_image.cl b/GPU_version/vio/kernel/integral_image.cl new file mode 100644 index 0000000..0dfb3cc --- /dev/null +++ b/GPU_version/vio/kernel/integral_image.cl @@ -0,0 +1,14 @@ +__kernel void integral_image( + __read_only image2d_t* int_img, // grayescale image - height X width + __write_only image2d_t* out_img // (height+1) X (width+1) with zero values + ) +{ + sampler_t const sampler = CLK_ADDRESS_CLAMP | CLK_FILTER_NEAREST; + int k = get_global_id(0) + int2 coord = (int2)(get_global_id(1)+1, get_global_id(2)+1); + int res = 0; + for (int i = 0; i < coord.x; i++) + for (int j = 0; j < coord.y; j++) + res += read_imageui(int_img[k], sampler, (int2)(i, j)); // bottom right corner + write_imageui(out_img[k], coord, res); +} \ No newline at end of file diff --git a/GPU_version/vio/src/cl_class.cpp b/GPU_version/vio/src/cl_class.cpp index c3af6a1..f615102 100644 --- a/GPU_version/vio/src/cl_class.cpp +++ b/GPU_version/vio/src/cl_class.cpp @@ -41,7 +41,9 @@ opencl::opencl(vk::AbstractCamera* cam):cam(cam) { " -DF_Y="+std::to_string(camera[1])+ " -DC_X="+std::to_string(camera[2])+ " -DC_Y="+std::to_string(camera[3])+ - " -DS="+std::to_string(camera[4]); + " -DS="+std::to_string(camera[4])+ + " -DFREAK_LOG2=0.693147180559945 -DFREAK_NB_ORIENTATION=256 -DFREAK_NB_POINTS=43"+ + " -DFREAK_SMALLEST_KP_SIZE=7 -DNB_PAIRS=512 -DNB_SCALES=64"; if(program->build({ *device },options.c_str()) !=0) std::cout << " Error building: " << program->getBuildInfo(*device)<<'\n' << " Binary type: " << program->getBuildInfo(*device)<<'\n' diff --git a/GPU_version/vio/src/frame_handler_mono.cpp b/GPU_version/vio/src/frame_handler_mono.cpp index 576b57d..a4d4fe4 100644 --- a/GPU_version/vio/src/frame_handler_mono.cpp +++ b/GPU_version/vio/src/frame_handler_mono.cpp @@ -171,6 +171,7 @@ FrameHandlerBase::UpdateResult FrameHandlerMono::processFrame() SparseImgAlignGpu img_align(Config::kltMaxLevel(), Config::kltMinLevel(),30, SparseImgAlignGpu::GaussNewton, false,gpu_fast_); if(img_align.run(last_frame_, new_frame_)==0)return RESULT_FAILURE; reprojector_.reprojectMap(new_frame_, overlap_kfs_); + // assert // TODO /* std::cout<<"Reprojection Map nPoint: "< (size_t) Config::maxFts()) - break; + + ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + std::vector kps; // keypoints + cl_float4 data; + int frame_number = 0; + for(auto it_frame = overlap_kfs.begin(), ite_frame = overlap_kfs.end(); it_frame != ite_frame; it_frame++){ + for(auto it_ftr = it_frame->first->fts_.begin(), ite_ftr = it_frame->first->fts_.end(); it_ftr != ite_ftr; it_ftr++){ + data.w = frame_number; + data.x = (*it_ftr)->px.x(); + data.y = (*it_ftr)->px.y(); + data.z = 0.0; + kps.push_back(data); + } + frame_number++; } + cl_float4 keypoints[kps.size()]; + size_t counter = 0; + for(auto it = kps.begin(), ite = kps.end(); it != ite; it++) { + cl_float4 ftr; + ftr.w = it->w; + ftr.x = it->x; + ftr.y = it->y; + ftr.z = it->z; + keypoints[counter++] = ftr; + } + ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + /*cl_float3 keypoints[overlap_kfs.back().second]; + size_t counter = 0; + for(size_t i = 0; i < grid_.cells.size(); ++i) + { + Cell* cell = grid_.cells.at(grid_.cell_order[i]); + for(auto it = cell->begin(), ite = cell->end(); it != ite; it++, counter++) + { + keypoints[counter].x = it->px.x(); //x + keypoints[counter].y = it->px.y(); //y + keypoints[counter].z = 0.0; //angle + } + }*/ +// opencl_initializer(); +// cv::Mat img = overlap_kfs.back().first->img(); +// cv::Mat integral_img=cv::Mat(cv::Size(701, 501),CV_8UC1); +// gpu_freak->reload_buf(0,0,img); +// gpu_freak->run(0); +// gpu_freak->read(0,1,1,&integral_img); + + // FREAK preprocessing + static const float FREAK_LOG2 = 0.693147180559945; + static const int FREAK_NB_ORIENTATION = 256; + static const int NB_ORIENPAIRS = 45; + static const int FREAK_NB_POINTS = 43; + static const int FREAK_SMALLEST_KP_SIZE = 7; // smallest size of keypoints + static const int NB_PAIRS = 512; + static const int NB_SCALES = 64; + + bool orientationNormalized = true; + bool scaleNormalized = true; + float patternScale = 22.0f; + int nOctaves = 4; + + bool extAll = false; // true if all pairs need to be extracted for pairs selection + + cl_float3 patternLookup[NB_SCALES * FREAK_NB_ORIENTATION * FREAK_NB_POINTS]; // look-up table for the pattern points (position+sigma of all points at all scales and orientation) + int patternSizes[NB_SCALES]; // size of the pattern at a specific scale (used to check if a point is within image boundaries) + cl_uchar2 descriptionPairs[NB_PAIRS]; + cl_int4 orientationPairs[NB_ORIENPAIRS]; + + // default pairs + static const int FREAK_DEF_PAIRS[NB_PAIRS] = { + 404,431,818,511,181,52,311,874,774,543,719,230,417,205,11, + 560,149,265,39,306,165,857,250,8,61,15,55,717,44,412, + 592,134,761,695,660,782,625,487,549,516,271,665,762,392,178, + 796,773,31,672,845,548,794,677,654,241,831,225,238,849,83, + 691,484,826,707,122,517,583,731,328,339,571,475,394,472,580, + 381,137,93,380,327,619,729,808,218,213,459,141,806,341,95, + 382,568,124,750,193,749,706,843,79,199,317,329,768,198,100, + 466,613,78,562,783,689,136,838,94,142,164,679,219,419,366, + 418,423,77,89,523,259,683,312,555,20,470,684,123,458,453,833, + 72,113,253,108,313,25,153,648,411,607,618,128,305,232,301,84, + 56,264,371,46,407,360,38,99,176,710,114,578,66,372,653, + 129,359,424,159,821,10,323,393,5,340,891,9,790,47,0,175,346, + 236,26,172,147,574,561,32,294,429,724,755,398,787,288,299, + 769,565,767,722,757,224,465,723,498,467,235,127,802,446,233, + 544,482,800,318,16,532,801,441,554,173,60,530,713,469,30, + 212,630,899,170,266,799,88,49,512,399,23,500,107,524,90, + 194,143,135,192,206,345,148,71,119,101,563,870,158,254,214, + 276,464,332,725,188,385,24,476,40,231,620,171,258,67,109, + 844,244,187,388,701,690,50,7,850,479,48,522,22,154,12,659, + 736,655,577,737,830,811,174,21,237,335,353,234,53,270,62, + 182,45,177,245,812,673,355,556,612,166,204,54,248,365,226, + 242,452,700,685,573,14,842,481,468,781,564,416,179,405,35, + 819,608,624,367,98,643,448,2,460,676,440,240,130,146,184, + 185,430,65,807,377,82,121,708,239,310,138,596,730,575,477, + 851,797,247,27,85,586,307,779,326,494,856,324,827,96,748, + 13,397,125,688,702,92,293,716,277,140,112,4,80,855,839,1, + 413,347,584,493,289,696,19,751,379,76,73,115,6,590,183,734, + 197,483,217,344,330,400,186,243,587,220,780,200,793,246,824, + 41,735,579,81,703,322,760,720,139,480,490,91,814,813,163, + 152,488,763,263,425,410,576,120,319,668,150,160,302,491,515, + 260,145,428,97,251,395,272,252,18,106,358,854,485,144,550, + 131,133,378,68,102,104,58,361,275,209,697,582,338,742,589, + 325,408,229,28,304,191,189,110,126,486,211,547,533,70,215, + 670,249,36,581,389,605,331,518,442,822 + }; + + float scaleStep = pow(2.0, (float)(nOctaves)/NB_SCALES ); // 2 ^ ( (nOctaves-1) /nbScales) + + const int nn[8] = {6, 6, 6, 6, 6, 6, 6, 1}; // number of points on each concentric circle (from outer to inner) + const float bigR = (float)(2.0 / 3.0); // bigger radius + const float smallR = (float)(2.0 / 24.0); // smaller radius + const float unitSpace = (float)((bigR - smallR) / 21.0 ); // define spaces between concentric circles (from center to outer: 1,2,3,4,5,6) + // radii of the concentric cirles (from outer to inner) + const float radius[8] = {bigR , bigR - 6 * unitSpace, bigR - 11 * unitSpace, bigR - 15 * unitSpace, + bigR - 18 * unitSpace, bigR - 20 * unitSpace, smallR , 0.0}; + // sigma of pattern points (each group of 6 points on a concentric cirle has the same sigma) + const float sigma[8] = {float(radius[0] / 2.0), float(radius[1] / 2.0), float(radius[2] / 2.0), float(radius[3] / 2.0), + float(radius[4] / 2.0), float(radius[5] / 2.0), float(radius[6] / 2.0), float(radius[6] / 2.0)}; + + for( int scaleIdx=0; scaleIdx < NB_SCALES; ++scaleIdx ) + { + patternSizes[scaleIdx] = 0; // proper initialization + float scalingFactor = pow(scaleStep,scaleIdx); //scale of the pattern, scaleStep ^ scaleIdx + + for( int orientationIdx = 0; orientationIdx < FREAK_NB_ORIENTATION; ++orientationIdx ) + { + int pointIdx = 0; + + for( size_t i = 0; i < 8; ++i ) + { + for( int k = 0 ; k < nn[i]; ++k ) + { + float alpha = (float)(k) * 2 * (float)3.141592653589793238462643383279502884197169399375 / (float)(nn[i]) + + ((float)3.141592653589793238462643383279502884197169399375 / nn[i] * ( i % 2 )/*beta*/) + + ((float)(orientationIdx * 2 * (float)3.141592653589793238462643383279502884197169399375 / (float)(FREAK_NB_ORIENTATION)) /* theta*/); + + // add the point to the look-up table + cl_float3* point = &patternLookup[scaleIdx * FREAK_NB_ORIENTATION * FREAK_NB_POINTS + orientationIdx * FREAK_NB_POINTS + pointIdx]; + point->x = (float)(radius[i] * cos(alpha) * scalingFactor * patternScale); //x + point->y = (float)(radius[i] * sin(alpha) * scalingFactor * patternScale); //y + point->z = (float)(sigma[i] * scalingFactor * patternScale); //sigma + + // adapt the sizeList if necessary + const int sizeMax = (int)(ceil((radius[i] + sigma[i]) * scalingFactor * patternScale)) + 1; + if( patternSizes[scaleIdx] < sizeMax ) + patternSizes[scaleIdx] = sizeMax; + + ++pointIdx; + } + } + } + } + + // build the list of orientation pairs + orientationPairs[0].w=0; orientationPairs[0].x=3; orientationPairs[1].w=1; orientationPairs[1].x=4; orientationPairs[2].w=2; orientationPairs[2].x=5; + orientationPairs[3].w=0; orientationPairs[3].x=2; orientationPairs[4].w=1; orientationPairs[4].x=3; orientationPairs[5].w=2; orientationPairs[5].x=4; + orientationPairs[6].w=3; orientationPairs[6].x=5; orientationPairs[7].w=4; orientationPairs[7].x=0; orientationPairs[8].w=5; orientationPairs[8].x=1; + + orientationPairs[9].w=6; orientationPairs[9].x=9; orientationPairs[10].w=7; orientationPairs[10].x=10; orientationPairs[11].w=8; orientationPairs[11].x=11; + orientationPairs[12].w=6; orientationPairs[12].x=8; orientationPairs[13].w=7; orientationPairs[13].x=9; orientationPairs[14].w=8; orientationPairs[14].x=10; + orientationPairs[15].w=9; orientationPairs[15].x=11; orientationPairs[16].w=10; orientationPairs[16].x=6; orientationPairs[17].w=11; orientationPairs[17].x=7; + + orientationPairs[18].w=12; orientationPairs[18].x=15; orientationPairs[19].w=13; orientationPairs[19].x=16; orientationPairs[20].w=14; orientationPairs[20].x=17; + orientationPairs[21].w=12; orientationPairs[21].x=14; orientationPairs[22].w=13; orientationPairs[22].x=15; orientationPairs[23].w=14; orientationPairs[23].x=16; + orientationPairs[24].w=15; orientationPairs[24].x=17; orientationPairs[25].w=16; orientationPairs[25].x=12; orientationPairs[26].w=17; orientationPairs[26].x=13; + + orientationPairs[27].w=18; orientationPairs[27].x=21; orientationPairs[28].w=19; orientationPairs[28].x=22; orientationPairs[29].w=20; orientationPairs[29].x=23; + orientationPairs[30].w=18; orientationPairs[30].x=20; orientationPairs[31].w=19; orientationPairs[31].x=21; orientationPairs[32].w=20; orientationPairs[32].x=22; + orientationPairs[33].w=21; orientationPairs[33].x=23; orientationPairs[34].w=22; orientationPairs[34].x=18; orientationPairs[35].w=23; orientationPairs[35].x=19; + + orientationPairs[36].w=24; orientationPairs[36].x=27; orientationPairs[37].w=25; orientationPairs[37].x=28; orientationPairs[38].w=26; orientationPairs[38].x=29; + orientationPairs[39].w=30; orientationPairs[39].x=33; orientationPairs[40].w=31; orientationPairs[40].x=34; orientationPairs[41].w=32; orientationPairs[41].x=35; + orientationPairs[42].w=36; orientationPairs[42].x=39; orientationPairs[43].w=37; orientationPairs[43].x=40; orientationPairs[44].w=38; orientationPairs[44].x=41; + + for( unsigned m = NB_ORIENPAIRS; m--; ) + { + float dx = patternLookup[orientationPairs[m].w].x - patternLookup[orientationPairs[m].x].x; + float dy = patternLookup[orientationPairs[m].w].y - patternLookup[orientationPairs[m].x].y; + float norm_sq = (dx * dx + dy * dy); + orientationPairs[m].y = round((dx / (norm_sq)) * 4096.0); //weight_dx + orientationPairs[m].z = round((dy / (norm_sq)) * 4096.0); //weight_dy + } + + // build the list of description pairs + cl_uchar2 allPairs[(int)((FREAK_NB_POINTS * (FREAK_NB_POINTS + 1)) / 2)]; + for( int i = 1, idx = 0; i < FREAK_NB_POINTS; ++i ) + { + // (generate all the pairs) + for( int j = 0; j < i; ++j ) + { + allPairs[idx++] = (cl_uchar2){(uchar)i, (uchar)j}; + } + } + for( int i = 0; i < NB_PAIRS; ++i ) + descriptionPairs[i] = allPairs[FREAK_DEF_PAIRS[i]]; + + int kpScaleIdx[overlap_kfs.back().second]; + + +// gpu_freak->reload_buf(1,0,img); +// gpu_freak->reload_buf(1,1,integral_img); +// gpu_freak->reload_buf(1,2, keypoints); +// gpu_freak->reload_buf(1,4,patternSizes); +// gpu_freak->reload_buf(1,5,orientationPairs); +// gpu_freak->reload_buf(1,6,patternLookup); +// gpu_freak->reload_buf(1,7,descriptionPairs); +// gpu_freak->write_buf(1,8,nOctaves); +// gpu_freak->reload_buf(1,9,kpScaleIdx); +// gpu_freak->run(1); +// cl_uchar descriptor[frame_number*300*64]={0}; +// gpu_freak->read(1,3,300*64,descriptor); + + ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +// for(size_t i=0; i (size_t) Config::maxFts()) +// break; +// } // SVO_STOP_TIMER("feature_align"); } @@ -151,7 +363,7 @@ bool Reprojector::pointQualityComparator(Candidate& lhs, Candidate& rhs) bool Reprojector::reprojectCell(Cell& cell, FramePtr frame) { - cell.sort(boost::bind(&Reprojector::pointQualityComparator, _1, _2)); + cell.sort(boost::bind(&Reprojector::pointQualityComparator, _1, _2)); Cell::iterator it=cell.begin(); while(it!=cell.end()) {

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�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