diff --git a/.gitignore b/.gitignore index 8efcdd5..9954e0e 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,16 @@ *.so *.o faster_rcnn_models + +# Pre-trained model +data/pretrain_model/ + +# Training output +data/cache/ +output/ + +# Dataset +data/KITTI/object + +# Logs +experiments/logs/ diff --git a/README.md b/README.md index 83450e1..8833546 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,18 @@ For details about MV3D please refer to the paper [Multi-View 3D Object Detection ``` ### Requirements: software ++ Ubuntu 16.04 LTS +```bash +$ lsb_release -a +No LSB modules are available. +Distributor ID: Ubuntu +Description: Ubuntu 16.04 LTS +Release: 16.04 +Codename: xenial +$ python --version +Python 2.7.12 +``` + 1. Requirements for Tensorflow 1.0 (see: [Tensorflow](https://www.tensorflow.org/)) @@ -28,10 +40,51 @@ For details about MV3D please refer to the paper [Multi-View 3D Object Detection ### Installation 1. Clone the Faster R-CNN repository -```Shell - # Make sure to clone with --recursive - git clone --recursive https://github.com/RyannnG/MV3D_TF.git -``` + ```bash + $ lsb_release -a + No LSB modules are available. + Distributor ID: Ubuntu + Description: Ubuntu 18.04.4 LTS + Release: 18.04 + Codename: bionic + $ python --version + Python 2.7.17 + $ pip install virtualenv==16.0.0 + ... + # configure virtualenvwrapper + $ mkdir ~/.local/virtualenvs + # append contents in `~/.bashrc` + $ vim ~/.bashrc + ... + ## Configure virtualenvwrapper + # always use pip/distribute + export VIRTUALENV_USE_DISTRIBUTE=1 + # directory to store all virtual environment + export WORKON_HOME=~/.local/virtualenvs + if [ -e ~/.local/bin/virtualenvwrapper.sh ]; then + source ~/.local/bin/virtualenvwrapper.sh + elif [ -e /usr/local/bin/virtualenvwrapper.sh ]; then + source /usr/local/bin/virtualenvwrapper.sh + fi + export PIP_VIRTUALENV_BASE=$WORKON_HOME + export PIP_RESPECT_VIRTUALENV=true + + # enable virtualenvwrapper + $ source ~/.bashrc + # create virtual environment with python2.7, naming python2-tf1.0.0 means tensorflow 1.0.0 + $ mkvirtualenv -p /usr/bin/python2.7 python2.7-tf1.0.0 + created virtual environment CPython2.7.17.final.0-64 in 379ms + creator CPython2Posix(dest=/home/garychan/.local/virtualenvs/python2.7-tf1.0.0, clear=False, no_vcs_ignore=False, global=False) + seeder FromAppData(download=False, pip=bundle, wheel=bundle, setuptools=bundle, via=copy, app_data_dir=/home/garychan/.local/share/virtualenv) + added seed packages: pip==20.3.1, setuptools==44.1.1, wheel==0.36.1 + activators PythonActivator,CShellActivator,FishActivator,PowerShellActivator,BashActivator + ... + (python2.7-tf1.0.0) ...~$ deactivate + $ + + # Make sure to clone with --recursive + $ git clone --recursive https://github.com/LidarPerception/MV3D.git + ``` 2. Build the Cython modules ```Shell diff --git a/data/KITTI/ImageSets/train.txt b/data/KITTI/ImageSets/train.txt new file mode 100644 index 0000000..505b1e2 --- /dev/null +++ b/data/KITTI/ImageSets/train.txt @@ -0,0 +1,3712 @@ +000000 +000003 +000007 +000009 +000010 +000011 +000012 +000013 +000014 +000016 +000017 +000018 +000022 +000026 +000029 +000030 +000032 +000034 +000036 +000038 +000041 +000043 +000044 +000045 +000046 +000049 +000051 +000054 +000055 +000056 +000057 +000060 +000064 +000067 +000068 +000069 +000070 +000071 +000072 +000073 +000074 +000075 +000079 +000080 +000082 +000083 +000084 +000085 +000086 +000087 +000088 +000091 +000092 +000095 +000096 +000097 +000099 +000100 +000101 +000103 +000105 +000109 +000110 +000111 +000112 +000113 +000114 +000115 +000119 +000120 +000121 +000123 +000125 +000127 +000129 +000130 +000131 +000133 +000136 +000138 +000141 +000142 +000144 +000145 +000146 +000148 +000149 +000150 +000154 +000155 +000157 +000158 +000160 +000162 +000163 +000164 +000165 +000166 +000171 +000172 +000176 +000177 +000178 +000179 +000180 +000184 +000185 +000189 +000193 +000198 +000200 +000202 +000205 +000206 +000208 +000209 +000210 +000214 +000215 +000217 +000219 +000220 +000221 +000222 +000225 +000227 +000228 +000232 +000233 +000238 +000240 +000241 +000243 +000244 +000245 +000253 +000254 +000255 +000256 +000257 +000258 +000259 +000261 +000264 +000267 +000271 +000274 +000275 +000276 +000277 +000280 +000282 +000285 +000286 +000287 +000288 +000292 +000294 +000295 +000296 +000298 +000299 +000300 +000303 +000304 +000306 +000310 +000313 +000316 +000317 +000318 +000322 +000325 +000326 +000330 +000331 +000334 +000337 +000338 +000339 +000342 +000344 +000348 +000349 +000353 +000358 +000363 +000364 +000367 +000368 +000371 +000374 +000375 +000380 +000384 +000387 +000389 +000390 +000400 +000405 +000406 +000410 +000411 +000412 +000416 +000417 +000418 +000421 +000423 +000424 +000425 +000426 +000431 +000432 +000433 +000434 +000435 +000438 +000439 +000441 +000442 +000444 +000445 +000447 +000449 +000456 +000458 +000460 +000461 +000462 +000464 +000465 +000466 +000467 +000470 +000471 +000474 +000482 +000483 +000484 +000487 +000488 +000490 +000497 +000500 +000501 +000502 +000505 +000507 +000511 +000513 +000514 +000516 +000518 +000520 +000522 +000523 +000525 +000526 +000529 +000531 +000532 +000534 +000535 +000537 +000538 +000539 +000540 +000544 +000547 +000549 +000550 +000552 +000553 +000556 +000557 +000562 +000563 +000565 +000570 +000573 +000574 +000575 +000576 +000577 +000578 +000579 +000580 +000582 +000584 +000585 +000586 +000587 +000592 +000593 +000594 +000596 +000597 +000598 +000599 +000602 +000603 +000605 +000606 +000607 +000608 +000609 +000616 +000617 +000621 +000622 +000623 +000627 +000629 +000631 +000632 +000633 +000637 +000638 +000640 +000641 +000643 +000646 +000649 +000651 +000652 +000653 +000654 +000656 +000661 +000662 +000663 +000664 +000665 +000666 +000668 +000671 +000672 +000673 +000675 +000676 +000678 +000680 +000681 +000685 +000686 +000687 +000688 +000689 +000690 +000693 +000695 +000697 +000701 +000703 +000705 +000707 +000709 +000710 +000711 +000712 +000713 +000714 +000715 +000719 +000720 +000723 +000724 +000726 +000730 +000732 +000733 +000735 +000738 +000739 +000742 +000743 +000744 +000747 +000749 +000753 +000755 +000757 +000758 +000759 +000760 +000762 +000763 +000764 +000770 +000775 +000776 +000777 +000780 +000781 +000783 +000784 +000785 +000786 +000787 +000788 +000789 +000791 +000793 +000794 +000796 +000797 +000799 +000808 +000813 +000814 +000815 +000817 +000818 +000820 +000821 +000822 +000824 +000825 +000827 +000828 +000829 +000830 +000832 +000833 +000834 +000835 +000836 +000839 +000842 +000845 +000846 +000851 +000853 +000855 +000856 +000857 +000858 +000860 +000861 +000864 +000865 +000866 +000867 +000868 +000870 +000871 +000872 +000880 +000882 +000883 +000886 +000887 +000888 +000890 +000891 +000892 +000895 +000896 +000898 +000900 +000901 +000902 +000903 +000905 +000906 +000908 +000910 +000913 +000914 +000918 +000919 +000921 +000924 +000925 +000927 +000929 +000933 +000934 +000935 +000936 +000937 +000941 +000945 +000946 +000947 +000950 +000951 +000954 +000955 +000957 +000959 +000960 +000962 +000965 +000968 +000972 +000975 +000977 +000978 +000980 +000982 +000987 +000989 +000990 +000992 +000993 +000994 +000995 +000996 +000997 +000998 +001000 +001001 +001003 +001004 +001005 +001009 +001016 +001017 +001020 +001023 +001024 +001028 +001029 +001030 +001031 +001032 +001033 +001034 +001036 +001038 +001040 +001041 +001044 +001045 +001047 +001048 +001049 +001052 +001056 +001057 +001059 +001060 +001061 +001062 +001064 +001072 +001073 +001074 +001079 +001080 +001081 +001082 +001085 +001087 +001090 +001091 +001092 +001093 +001098 +001100 +001103 +001105 +001109 +001110 +001112 +001117 +001119 +001121 +001122 +001124 +001126 +001128 +001130 +001137 +001142 +001146 +001151 +001156 +001157 +001159 +001160 +001161 +001164 +001165 +001166 +001168 +001169 +001170 +001171 +001174 +001175 +001181 +001184 +001185 +001186 +001190 +001196 +001197 +001200 +001201 +001202 +001204 +001205 +001208 +001209 +001210 +001211 +001212 +001215 +001219 +001220 +001223 +001227 +001229 +001231 +001233 +001238 +001240 +001247 +001248 +001250 +001256 +001258 +001262 +001264 +001276 +001277 +001278 +001279 +001280 +001282 +001283 +001285 +001288 +001290 +001293 +001297 +001298 +001299 +001300 +001301 +001302 +001309 +001310 +001311 +001312 +001313 +001315 +001316 +001319 +001320 +001321 +001322 +001323 +001324 +001325 +001326 +001327 +001328 +001335 +001338 +001340 +001341 +001343 +001348 +001349 +001351 +001354 +001357 +001358 +001360 +001361 +001362 +001364 +001366 +001367 +001368 +001369 +001370 +001371 +001373 +001378 +001379 +001383 +001385 +001390 +001392 +001393 +001394 +001396 +001399 +001400 +001401 +001402 +001403 +001404 +001405 +001406 +001408 +001409 +001413 +001414 +001417 +001418 +001420 +001422 +001423 +001425 +001426 +001428 +001429 +001430 +001433 +001434 +001436 +001440 +001444 +001447 +001449 +001452 +001453 +001454 +001455 +001456 +001457 +001459 +001460 +001462 +001464 +001465 +001467 +001468 +001470 +001472 +001473 +001474 +001475 +001476 +001479 +001482 +001483 +001484 +001486 +001490 +001491 +001492 +001493 +001494 +001496 +001498 +001499 +001500 +001503 +001504 +001505 +001506 +001509 +001510 +001512 +001515 +001518 +001519 +001520 +001523 +001529 +001530 +001531 +001532 +001534 +001539 +001540 +001541 +001543 +001544 +001548 +001550 +001551 +001553 +001554 +001556 +001558 +001559 +001561 +001563 +001566 +001568 +001570 +001571 +001572 +001575 +001578 +001580 +001581 +001584 +001593 +001595 +001598 +001599 +001601 +001604 +001607 +001608 +001609 +001611 +001612 +001614 +001618 +001620 +001622 +001623 +001624 +001626 +001628 +001630 +001632 +001636 +001637 +001638 +001639 +001641 +001642 +001644 +001646 +001648 +001649 +001651 +001652 +001653 +001655 +001657 +001659 +001661 +001663 +001668 +001669 +001671 +001672 +001673 +001674 +001676 +001677 +001678 +001679 +001681 +001685 +001686 +001687 +001688 +001690 +001691 +001692 +001695 +001696 +001698 +001700 +001703 +001708 +001715 +001716 +001720 +001723 +001724 +001725 +001728 +001730 +001731 +001734 +001735 +001736 +001737 +001738 +001739 +001743 +001744 +001747 +001748 +001753 +001754 +001756 +001757 +001759 +001760 +001761 +001763 +001766 +001767 +001769 +001770 +001773 +001775 +001777 +001779 +001784 +001785 +001788 +001789 +001790 +001791 +001792 +001793 +001796 +001798 +001799 +001803 +001805 +001806 +001809 +001810 +001811 +001812 +001815 +001816 +001819 +001821 +001826 +001827 +001829 +001830 +001832 +001833 +001834 +001836 +001837 +001838 +001839 +001841 +001842 +001843 +001845 +001847 +001849 +001850 +001857 +001860 +001864 +001865 +001866 +001870 +001871 +001873 +001874 +001876 +001879 +001882 +001883 +001889 +001891 +001894 +001895 +001896 +001899 +001901 +001902 +001903 +001906 +001907 +001908 +001910 +001911 +001912 +001913 +001914 +001915 +001916 +001917 +001918 +001921 +001922 +001930 +001935 +001938 +001939 +001944 +001947 +001948 +001949 +001950 +001951 +001953 +001955 +001956 +001957 +001958 +001961 +001962 +001963 +001964 +001965 +001968 +001970 +001971 +001973 +001974 +001975 +001976 +001981 +001987 +001988 +001990 +001992 +001993 +001994 +001998 +002003 +002005 +002006 +002007 +002009 +002015 +002016 +002018 +002020 +002023 +002024 +002026 +002030 +002031 +002032 +002033 +002039 +002040 +002041 +002047 +002051 +002053 +002055 +002059 +002060 +002061 +002063 +002064 +002065 +002066 +002067 +002069 +002070 +002072 +002077 +002080 +002083 +002084 +002088 +002090 +002092 +002095 +002096 +002097 +002098 +002099 +002104 +002105 +002106 +002109 +002110 +002114 +002116 +002117 +002119 +002122 +002125 +002126 +002129 +002132 +002133 +002134 +002141 +002143 +002144 +002145 +002146 +002147 +002148 +002149 +002150 +002154 +002155 +002156 +002157 +002162 +002164 +002167 +002171 +002172 +002174 +002175 +002176 +002178 +002180 +002181 +002184 +002186 +002189 +002190 +002191 +002192 +002194 +002195 +002197 +002198 +002199 +002203 +002204 +002205 +002208 +002210 +002211 +002212 +002213 +002214 +002217 +002221 +002222 +002223 +002226 +002227 +002230 +002231 +002235 +002236 +002237 +002238 +002240 +002241 +002242 +002244 +002247 +002249 +002252 +002253 +002256 +002259 +002261 +002263 +002264 +002265 +002267 +002268 +002269 +002270 +002271 +002273 +002274 +002275 +002278 +002281 +002285 +002288 +002289 +002296 +002297 +002301 +002302 +002305 +002309 +002311 +002312 +002313 +002316 +002317 +002318 +002321 +002322 +002323 +002324 +002326 +002328 +002331 +002333 +002335 +002339 +002342 +002343 +002349 +002350 +002351 +002352 +002354 +002355 +002358 +002360 +002361 +002363 +002364 +002368 +002371 +002373 +002374 +002375 +002377 +002379 +002381 +002388 +002389 +002390 +002394 +002395 +002396 +002400 +002401 +002402 +002403 +002406 +002407 +002408 +002409 +002410 +002412 +002413 +002416 +002417 +002421 +002426 +002427 +002430 +002431 +002435 +002436 +002437 +002438 +002441 +002443 +002444 +002445 +002447 +002448 +002449 +002451 +002452 +002453 +002456 +002459 +002464 +002465 +002466 +002467 +002468 +002469 +002470 +002471 +002472 +002475 +002480 +002481 +002482 +002484 +002485 +002487 +002489 +002491 +002493 +002494 +002496 +002498 +002501 +002507 +002508 +002510 +002512 +002513 +002514 +002515 +002517 +002518 +002522 +002523 +002524 +002527 +002533 +002535 +002536 +002537 +002542 +002544 +002545 +002547 +002549 +002550 +002551 +002553 +002554 +002555 +002559 +002560 +002561 +002566 +002567 +002571 +002573 +002576 +002578 +002579 +002582 +002587 +002588 +002589 +002591 +002592 +002593 +002595 +002596 +002597 +002605 +002607 +002608 +002609 +002610 +002611 +002614 +002616 +002617 +002618 +002620 +002622 +002623 +002624 +002627 +002629 +002632 +002634 +002637 +002639 +002642 +002643 +002647 +002648 +002649 +002650 +002652 +002654 +002655 +002658 +002659 +002660 +002662 +002664 +002665 +002667 +002668 +002670 +002671 +002672 +002676 +002678 +002679 +002682 +002683 +002684 +002687 +002688 +002689 +002691 +002697 +002698 +002700 +002701 +002703 +002704 +002705 +002708 +002714 +002716 +002718 +002719 +002723 +002731 +002732 +002733 +002734 +002736 +002738 +002739 +002741 +002743 +002750 +002751 +002754 +002756 +002759 +002762 +002766 +002768 +002769 +002770 +002771 +002774 +002776 +002777 +002778 +002779 +002780 +002781 +002782 +002784 +002785 +002788 +002790 +002791 +002792 +002795 +002798 +002799 +002802 +002803 +002807 +002808 +002813 +002816 +002817 +002819 +002821 +002822 +002823 +002824 +002825 +002829 +002832 +002834 +002835 +002837 +002838 +002842 +002843 +002849 +002850 +002851 +002852 +002854 +002855 +002857 +002859 +002860 +002862 +002864 +002865 +002868 +002869 +002870 +002871 +002872 +002873 +002874 +002882 +002884 +002886 +002887 +002888 +002897 +002898 +002899 +002904 +002906 +002907 +002909 +002910 +002912 +002913 +002915 +002918 +002920 +002921 +002922 +002923 +002926 +002927 +002929 +002931 +002932 +002933 +002936 +002938 +002939 +002940 +002941 +002943 +002946 +002949 +002950 +002952 +002954 +002956 +002965 +002967 +002968 +002969 +002970 +002972 +002973 +002975 +002980 +002981 +002983 +002986 +002987 +002989 +002990 +002992 +002996 +002998 +003002 +003008 +003009 +003012 +003013 +003014 +003015 +003016 +003017 +003018 +003020 +003021 +003023 +003026 +003028 +003036 +003037 +003039 +003040 +003041 +003044 +003045 +003049 +003051 +003057 +003059 +003060 +003063 +003064 +003068 +003069 +003070 +003072 +003075 +003077 +003078 +003079 +003081 +003083 +003084 +003085 +003086 +003089 +003091 +003092 +003093 +003095 +003097 +003098 +003100 +003104 +003105 +003108 +003111 +003113 +003115 +003117 +003119 +003120 +003121 +003122 +003123 +003125 +003128 +003130 +003132 +003138 +003139 +003140 +003143 +003147 +003149 +003151 +003152 +003154 +003155 +003157 +003158 +003160 +003163 +003164 +003166 +003168 +003169 +003171 +003173 +003176 +003178 +003184 +003185 +003186 +003188 +003189 +003191 +003193 +003195 +003196 +003198 +003200 +003201 +003205 +003206 +003208 +003209 +003212 +003213 +003215 +003218 +003220 +003223 +003227 +003230 +003234 +003235 +003237 +003238 +003241 +003243 +003244 +003245 +003246 +003248 +003249 +003253 +003256 +003258 +003260 +003261 +003262 +003263 +003264 +003267 +003268 +003270 +003271 +003273 +003274 +003277 +003278 +003279 +003282 +003284 +003285 +003286 +003287 +003289 +003290 +003291 +003293 +003294 +003297 +003299 +003303 +003307 +003309 +003311 +003314 +003317 +003320 +003321 +003326 +003327 +003328 +003329 +003332 +003333 +003334 +003335 +003336 +003339 +003340 +003342 +003344 +003345 +003348 +003349 +003354 +003356 +003359 +003360 +003361 +003362 +003363 +003369 +003371 +003372 +003374 +003376 +003377 +003378 +003380 +003381 +003382 +003383 +003384 +003387 +003388 +003389 +003390 +003391 +003392 +003398 +003400 +003413 +003414 +003415 +003416 +003418 +003420 +003423 +003424 +003427 +003431 +003433 +003436 +003437 +003438 +003439 +003440 +003441 +003442 +003444 +003445 +003446 +003451 +003452 +003454 +003455 +003457 +003458 +003459 +003460 +003462 +003463 +003468 +003472 +003473 +003475 +003476 +003477 +003479 +003485 +003486 +003493 +003494 +003498 +003499 +003500 +003501 +003505 +003507 +003508 +003509 +003510 +003512 +003513 +003514 +003516 +003518 +003522 +003523 +003525 +003526 +003532 +003533 +003534 +003536 +003537 +003538 +003540 +003541 +003542 +003545 +003546 +003548 +003549 +003551 +003555 +003556 +003560 +003561 +003564 +003565 +003566 +003567 +003569 +003570 +003572 +003575 +003576 +003577 +003578 +003579 +003581 +003585 +003586 +003587 +003589 +003590 +003591 +003592 +003593 +003594 +003595 +003596 +003597 +003598 +003599 +003602 +003603 +003606 +003610 +003612 +003613 +003615 +003617 +003619 +003625 +003626 +003628 +003636 +003637 +003638 +003639 +003640 +003641 +003642 +003644 +003646 +003648 +003650 +003651 +003654 +003656 +003657 +003660 +003663 +003664 +003665 +003666 +003670 +003672 +003673 +003674 +003675 +003680 +003681 +003685 +003686 +003687 +003693 +003694 +003695 +003696 +003697 +003698 +003699 +003700 +003701 +003704 +003706 +003709 +003710 +003713 +003714 +003717 +003720 +003721 +003722 +003724 +003725 +003727 +003729 +003730 +003731 +003732 +003733 +003734 +003740 +003741 +003742 +003743 +003744 +003745 +003749 +003752 +003754 +003757 +003758 +003759 +003760 +003761 +003765 +003766 +003767 +003768 +003770 +003772 +003773 +003774 +003776 +003780 +003783 +003784 +003785 +003786 +003789 +003790 +003791 +003792 +003795 +003796 +003797 +003799 +003801 +003803 +003806 +003810 +003813 +003815 +003816 +003817 +003818 +003819 +003821 +003823 +003824 +003825 +003829 +003831 +003832 +003833 +003836 +003838 +003839 +003840 +003842 +003843 +003844 +003845 +003846 +003848 +003849 +003850 +003851 +003853 +003855 +003857 +003858 +003861 +003862 +003863 +003865 +003867 +003868 +003871 +003875 +003876 +003877 +003882 +003884 +003887 +003888 +003889 +003893 +003895 +003896 +003900 +003903 +003904 +003906 +003908 +003910 +003911 +003912 +003913 +003917 +003918 +003919 +003921 +003922 +003925 +003927 +003928 +003929 +003930 +003933 +003935 +003936 +003939 +003940 +003941 +003942 +003944 +003947 +003949 +003951 +003952 +003953 +003954 +003955 +003957 +003959 +003960 +003963 +003966 +003967 +003968 +003971 +003973 +003974 +003976 +003978 +003979 +003983 +003985 +003987 +003988 +003989 +003990 +003991 +003993 +003994 +003995 +003997 +003999 +004005 +004006 +004012 +004013 +004014 +004015 +004017 +004018 +004019 +004020 +004022 +004023 +004024 +004025 +004029 +004030 +004031 +004035 +004037 +004039 +004043 +004044 +004046 +004047 +004050 +004052 +004053 +004054 +004056 +004057 +004058 +004060 +004062 +004066 +004067 +004069 +004070 +004071 +004073 +004075 +004076 +004078 +004080 +004084 +004086 +004088 +004090 +004093 +004094 +004097 +004099 +004102 +004103 +004106 +004112 +004114 +004115 +004123 +004127 +004133 +004134 +004135 +004139 +004141 +004144 +004145 +004146 +004147 +004151 +004159 +004165 +004166 +004167 +004169 +004170 +004176 +004177 +004178 +004179 +004180 +004181 +004182 +004183 +004184 +004186 +004192 +004193 +004194 +004197 +004198 +004199 +004200 +004201 +004203 +004204 +004208 +004211 +004212 +004216 +004217 +004218 +004219 +004225 +004227 +004229 +004230 +004231 +004233 +004234 +004235 +004236 +004238 +004240 +004244 +004245 +004247 +004252 +004253 +004257 +004258 +004261 +004262 +004264 +004265 +004266 +004267 +004268 +004269 +004272 +004273 +004274 +004276 +004279 +004283 +004286 +004287 +004292 +004296 +004297 +004302 +004304 +004308 +004310 +004313 +004315 +004316 +004317 +004320 +004322 +004325 +004328 +004331 +004332 +004333 +004334 +004339 +004341 +004344 +004346 +004347 +004351 +004354 +004355 +004356 +004357 +004358 +004359 +004361 +004365 +004366 +004371 +004372 +004375 +004376 +004378 +004379 +004380 +004381 +004382 +004386 +004387 +004389 +004390 +004394 +004395 +004399 +004400 +004405 +004408 +004409 +004410 +004411 +004412 +004413 +004416 +004417 +004427 +004428 +004431 +004432 +004436 +004441 +004442 +004445 +004446 +004448 +004449 +004451 +004453 +004455 +004457 +004459 +004461 +004463 +004464 +004466 +004467 +004468 +004471 +004473 +004476 +004477 +004478 +004479 +004484 +004488 +004492 +004495 +004497 +004498 +004499 +004500 +004503 +004504 +004505 +004506 +004507 +004509 +004510 +004512 +004514 +004515 +004518 +004522 +004523 +004524 +004525 +004533 +004535 +004536 +004537 +004538 +004539 +004543 +004544 +004545 +004546 +004550 +004552 +004554 +004555 +004558 +004559 +004560 +004561 +004563 +004564 +004565 +004571 +004572 +004575 +004577 +004579 +004580 +004583 +004584 +004586 +004590 +004592 +004593 +004594 +004595 +004597 +004600 +004601 +004602 +004604 +004605 +004606 +004607 +004613 +004614 +004616 +004617 +004619 +004621 +004623 +004625 +004627 +004628 +004631 +004635 +004637 +004639 +004641 +004642 +004643 +004645 +004646 +004653 +004654 +004656 +004659 +004661 +004662 +004663 +004664 +004670 +004671 +004674 +004675 +004676 +004677 +004678 +004681 +004684 +004690 +004696 +004701 +004702 +004703 +004704 +004707 +004712 +004719 +004723 +004727 +004728 +004729 +004731 +004733 +004736 +004741 +004747 +004749 +004750 +004751 +004754 +004755 +004757 +004758 +004760 +004761 +004765 +004767 +004771 +004772 +004774 +004775 +004778 +004779 +004780 +004781 +004784 +004785 +004786 +004789 +004793 +004794 +004795 +004796 +004798 +004801 +004802 +004803 +004805 +004808 +004809 +004812 +004818 +004819 +004820 +004823 +004824 +004826 +004827 +004828 +004833 +004834 +004836 +004837 +004838 +004840 +004841 +004842 +004844 +004845 +004847 +004853 +004854 +004855 +004856 +004857 +004865 +004866 +004869 +004870 +004872 +004876 +004877 +004878 +004879 +004880 +004882 +004883 +004884 +004886 +004889 +004890 +004894 +004897 +004899 +004900 +004901 +004906 +004908 +004910 +004911 +004912 +004913 +004915 +004916 +004919 +004922 +004923 +004925 +004930 +004933 +004936 +004937 +004939 +004940 +004945 +004950 +004951 +004952 +004955 +004957 +004961 +004964 +004965 +004967 +004968 +004969 +004970 +004971 +004972 +004973 +004975 +004977 +004978 +004980 +004982 +004984 +004987 +004991 +004992 +004997 +005000 +005003 +005005 +005006 +005007 +005009 +005011 +005012 +005016 +005018 +005020 +005022 +005023 +005025 +005027 +005029 +005030 +005031 +005033 +005035 +005039 +005042 +005043 +005044 +005046 +005047 +005048 +005051 +005059 +005060 +005061 +005066 +005069 +005071 +005076 +005083 +005084 +005085 +005087 +005088 +005089 +005091 +005092 +005096 +005097 +005098 +005099 +005100 +005102 +005104 +005106 +005107 +005111 +005114 +005115 +005116 +005117 +005118 +005119 +005123 +005126 +005129 +005130 +005131 +005132 +005134 +005137 +005142 +005146 +005148 +005150 +005151 +005152 +005154 +005159 +005160 +005165 +005169 +005171 +005173 +005177 +005178 +005183 +005186 +005187 +005192 +005193 +005195 +005196 +005200 +005202 +005203 +005204 +005205 +005207 +005208 +005209 +005210 +005211 +005212 +005215 +005216 +005220 +005223 +005224 +005225 +005228 +005231 +005232 +005235 +005238 +005239 +005243 +005245 +005247 +005248 +005250 +005252 +005253 +005254 +005257 +005258 +005259 +005261 +005263 +005264 +005265 +005266 +005269 +005270 +005272 +005277 +005278 +005281 +005283 +005285 +005286 +005288 +005290 +005291 +005293 +005294 +005295 +005300 +005301 +005302 +005303 +005305 +005306 +005310 +005314 +005317 +005320 +005324 +005326 +005327 +005331 +005332 +005339 +005340 +005344 +005346 +005348 +005351 +005352 +005353 +005354 +005355 +005356 +005357 +005358 +005361 +005362 +005364 +005367 +005370 +005373 +005374 +005376 +005380 +005382 +005383 +005384 +005387 +005388 +005392 +005393 +005394 +005395 +005396 +005397 +005398 +005399 +005400 +005401 +005402 +005403 +005406 +005407 +005408 +005409 +005410 +005411 +005412 +005414 +005416 +005417 +005418 +005419 +005420 +005421 +005424 +005425 +005428 +005432 +005433 +005435 +005436 +005438 +005439 +005440 +005442 +005446 +005451 +005454 +005455 +005456 +005457 +005462 +005463 +005464 +005468 +005469 +005470 +005475 +005478 +005480 +005483 +005485 +005488 +005490 +005491 +005492 +005493 +005496 +005497 +005499 +005500 +005501 +005502 +005503 +005504 +005506 +005507 +005508 +005509 +005512 +005513 +005516 +005517 +005518 +005519 +005520 +005521 +005522 +005524 +005526 +005527 +005529 +005530 +005533 +005535 +005537 +005539 +005541 +005543 +005547 +005548 +005549 +005550 +005553 +005554 +005561 +005562 +005563 +005564 +005567 +005568 +005569 +005574 +005575 +005578 +005579 +005583 +005585 +005591 +005592 +005593 +005594 +005597 +005598 +005599 +005604 +005605 +005606 +005607 +005608 +005609 +005611 +005612 +005614 +005615 +005620 +005621 +005622 +005624 +005626 +005627 +005628 +005629 +005632 +005636 +005637 +005641 +005644 +005645 +005646 +005647 +005648 +005651 +005654 +005655 +005657 +005661 +005663 +005665 +005666 +005667 +005670 +005671 +005674 +005675 +005678 +005679 +005681 +005682 +005684 +005686 +005688 +005690 +005691 +005692 +005693 +005694 +005696 +005697 +005701 +005702 +005705 +005710 +005711 +005715 +005716 +005718 +005719 +005720 +005721 +005722 +005723 +005726 +005730 +005732 +005733 +005734 +005737 +005738 +005742 +005748 +005749 +005750 +005752 +005753 +005755 +005756 +005758 +005759 +005761 +005764 +005766 +005767 +005768 +005769 +005770 +005771 +005772 +005773 +005774 +005775 +005776 +005778 +005779 +005780 +005781 +005788 +005789 +005791 +005792 +005795 +005797 +005798 +005799 +005802 +005804 +005808 +005809 +005810 +005813 +005814 +005815 +005816 +005817 +005823 +005824 +005825 +005828 +005830 +005831 +005832 +005833 +005835 +005836 +005837 +005838 +005842 +005844 +005845 +005846 +005847 +005848 +005849 +005850 +005851 +005853 +005858 +005860 +005861 +005862 +005863 +005865 +005866 +005867 +005868 +005870 +005871 +005872 +005874 +005875 +005877 +005880 +005884 +005886 +005888 +005890 +005891 +005895 +005896 +005897 +005898 +005902 +005904 +005908 +005915 +005920 +005924 +005928 +005929 +005930 +005932 +005934 +005936 +005937 +005940 +005941 +005942 +005943 +005945 +005946 +005950 +005951 +005953 +005954 +005956 +005957 +005959 +005960 +005964 +005966 +005967 +005968 +005971 +005973 +005974 +005976 +005977 +005979 +005980 +005983 +005987 +005989 +005990 +005991 +005992 +005993 +005995 +005998 +006000 +006004 +006006 +006007 +006011 +006015 +006017 +006018 +006019 +006020 +006021 +006022 +006025 +006032 +006035 +006037 +006040 +006049 +006051 +006053 +006055 +006056 +006059 +006064 +006065 +006069 +006072 +006073 +006076 +006079 +006080 +006081 +006082 +006084 +006089 +006090 +006091 +006092 +006094 +006099 +006101 +006104 +006105 +006108 +006109 +006111 +006112 +006113 +006119 +006120 +006124 +006128 +006129 +006131 +006132 +006134 +006135 +006137 +006138 +006140 +006141 +006142 +006143 +006145 +006147 +006149 +006150 +006153 +006155 +006157 +006158 +006159 +006160 +006162 +006164 +006166 +006170 +006171 +006172 +006174 +006175 +006178 +006179 +006180 +006181 +006183 +006184 +006188 +006189 +006191 +006192 +006193 +006197 +006199 +006200 +006201 +006203 +006205 +006206 +006207 +006209 +006211 +006212 +006214 +006216 +006217 +006218 +006220 +006221 +006223 +006224 +006225 +006226 +006230 +006231 +006234 +006235 +006236 +006237 +006239 +006241 +006242 +006243 +006245 +006248 +006251 +006252 +006253 +006254 +006255 +006256 +006257 +006259 +006260 +006261 +006262 +006264 +006268 +006271 +006277 +006279 +006281 +006283 +006284 +006285 +006289 +006290 +006291 +006292 +006293 +006294 +006295 +006296 +006298 +006299 +006303 +006304 +006307 +006308 +006309 +006310 +006311 +006313 +006318 +006319 +006320 +006323 +006325 +006326 +006327 +006328 +006329 +006330 +006335 +006336 +006337 +006341 +006346 +006347 +006350 +006352 +006358 +006359 +006361 +006362 +006363 +006365 +006367 +006373 +006374 +006375 +006376 +006378 +006382 +006383 +006384 +006387 +006389 +006390 +006392 +006397 +006398 +006399 +006400 +006401 +006402 +006404 +006408 +006412 +006413 +006414 +006418 +006419 +006421 +006422 +006428 +006429 +006430 +006431 +006432 +006438 +006443 +006447 +006448 +006449 +006450 +006455 +006456 +006457 +006458 +006459 +006460 +006461 +006463 +006466 +006467 +006471 +006476 +006479 +006480 +006485 +006487 +006489 +006490 +006492 +006494 +006495 +006499 +006500 +006501 +006502 +006504 +006509 +006510 +006511 +006513 +006518 +006522 +006523 +006526 +006527 +006528 +006536 +006538 +006539 +006541 +006543 +006544 +006545 +006546 +006547 +006550 +006552 +006554 +006557 +006559 +006562 +006564 +006566 +006567 +006571 +006572 +006573 +006575 +006579 +006580 +006584 +006585 +006587 +006589 +006591 +006594 +006598 +006599 +006600 +006601 +006605 +006606 +006607 +006608 +006609 +006610 +006615 +006616 +006617 +006619 +006620 +006621 +006622 +006627 +006630 +006631 +006635 +006639 +006640 +006642 +006644 +006645 +006646 +006648 +006652 +006653 +006654 +006657 +006661 +006662 +006663 +006665 +006668 +006671 +006672 +006673 +006675 +006680 +006681 +006683 +006684 +006687 +006688 +006689 +006690 +006691 +006697 +006699 +006700 +006702 +006704 +006705 +006706 +006707 +006708 +006716 +006717 +006718 +006721 +006722 +006724 +006727 +006728 +006730 +006735 +006736 +006739 +006740 +006742 +006743 +006746 +006748 +006749 +006750 +006757 +006763 +006766 +006769 +006774 +006775 +006776 +006779 +006784 +006787 +006788 +006790 +006793 +006795 +006799 +006801 +006802 +006805 +006809 +006810 +006814 +006817 +006820 +006821 +006823 +006824 +006825 +006826 +006827 +006830 +006831 +006834 +006835 +006838 +006839 +006840 +006842 +006845 +006846 +006848 +006851 +006857 +006859 +006861 +006864 +006865 +006867 +006869 +006871 +006875 +006877 +006878 +006880 +006883 +006886 +006888 +006890 +006892 +006893 +006894 +006896 +006902 +006904 +006905 +006909 +006911 +006912 +006915 +006916 +006918 +006919 +006920 +006921 +006923 +006924 +006926 +006927 +006929 +006931 +006932 +006933 +006934 +006935 +006939 +006940 +006941 +006946 +006947 +006949 +006951 +006952 +006957 +006958 +006961 +006963 +006965 +006966 +006967 +006969 +006970 +006972 +006974 +006975 +006976 +006979 +006983 +006984 +006985 +006986 +006988 +006991 +006993 +006995 +006996 +006998 +007001 +007002 +007004 +007007 +007009 +007013 +007017 +007018 +007020 +007021 +007024 +007025 +007035 +007036 +007039 +007040 +007041 +007044 +007045 +007046 +007050 +007051 +007054 +007057 +007058 +007060 +007062 +007064 +007066 +007070 +007073 +007075 +007077 +007086 +007090 +007092 +007093 +007094 +007096 +007097 +007099 +007101 +007102 +007104 +007105 +007106 +007107 +007108 +007111 +007113 +007114 +007116 +007118 +007121 +007123 +007124 +007126 +007127 +007128 +007129 +007134 +007137 +007140 +007141 +007142 +007143 +007147 +007148 +007150 +007151 +007152 +007153 +007155 +007156 +007159 +007160 +007167 +007170 +007171 +007173 +007175 +007179 +007181 +007184 +007185 +007186 +007188 +007189 +007190 +007191 +007192 +007193 +007195 +007196 +007197 +007203 +007206 +007209 +007211 +007213 +007216 +007218 +007220 +007222 +007223 +007224 +007226 +007228 +007231 +007234 +007236 +007237 +007239 +007241 +007243 +007245 +007248 +007249 +007250 +007251 +007254 +007257 +007259 +007263 +007264 +007268 +007269 +007270 +007276 +007281 +007282 +007285 +007286 +007293 +007295 +007296 +007297 +007298 +007301 +007305 +007306 +007307 +007308 +007312 +007313 +007314 +007316 +007317 +007320 +007321 +007324 +007328 +007332 +007333 +007334 +007335 +007338 +007340 +007341 +007346 +007348 +007354 +007355 +007356 +007357 +007358 +007361 +007362 +007363 +007365 +007366 +007367 +007368 +007370 +007372 +007373 +007378 +007379 +007386 +007387 +007388 +007390 +007392 +007393 +007394 +007399 +007400 +007404 +007406 +007408 +007414 +007417 +007418 +007425 +007427 +007428 +007429 +007431 +007432 +007438 +007441 +007443 +007444 +007446 +007451 +007452 +007454 +007455 +007457 +007459 +007460 +007461 +007465 +007471 +007472 +007474 +007476 +007479 \ No newline at end of file diff --git a/experiments/scripts/faster_rcnn_end2end.sh b/experiments/scripts/faster_rcnn_end2end.sh index be09f43..f13a1f2 100755 --- a/experiments/scripts/faster_rcnn_end2end.sh +++ b/experiments/scripts/faster_rcnn_end2end.sh @@ -44,6 +44,7 @@ case $DATASET in ;; esac +mkdir -p experiments/logs LOG="experiments/logs/faster_rcnn_end2end_${NET}_${EXTRA_ARGS_SLUG}.txt.`date +'%Y-%m-%d_%H-%M-%S'`" exec &> >(tee -a "$LOG") echo Logging output to "$LOG" @@ -66,3 +67,4 @@ time python ./tools/test_net.py --device ${DEV} --device_id ${DEV_ID} \ --cfg experiments/cfgs/faster_rcnn_end2end.yml \ --network VGGnet_test \ ${EXTRA_ARGS} + diff --git a/experiments/scripts/mv3d.sh b/experiments/scripts/mv3d.sh index 0f34d6f..d5fbc2a 100755 --- a/experiments/scripts/mv3d.sh +++ b/experiments/scripts/mv3d.sh @@ -1,11 +1,9 @@ #!/bin/bash # Usage: -# ./experiments/scripts/faster_rcnn_end2end.sh GPU NET DATASET [options args to {train,test}_net.py] -# DATASET is either pascal_voc or coco. +# ./experiments/scripts/mv3d.sh $DEVICE $DEVICE_ID PRE_TRAINED-MODEL kitti_train # # Example: -# ./experiments/scripts/faster_rcnn_end2end.sh 0 VGG_CNN_M_1024 pascal_voc \ -# --set EXP_DIR foobar RNG_SEED 42 TRAIN.SCALES "[400, 500, 600, 700]" +# ./experiments/scripts/mv3d.sh gpu 0 data/pretrain_model/VGG_imagenet.npy kitti_train set -x set -e @@ -23,20 +21,19 @@ EXTRA_ARGS=${array[@]:4:$len} EXTRA_ARGS_SLUG=${EXTRA_ARGS// /_} - -LOG="experiments/logs/mv3d_end2end_.txt.`date +'%Y-%m-%d_%H-%M-%S'`" +mkdir -p experiments/logs +LOG="experiments/logs/mv3d.txt.`date +'%Y-%m-%d_%H-%M-%S'`" exec &> >(tee -a "$LOG") echo Logging output to "$LOG" time python ./tools/train_net.py --device ${DEV} --device_id ${DEV_ID} \ - --weights ${WEIGHTS}\ + --weights ${WEIGHTS} \ --imdb ${DATASET} \ - --iters 50001\ + --iters 50001 \ --cfg experiments/cfgs/faster_rcnn_end2end.yml \ --network MV3D_train \ ${EXTRA_ARGS} - # --weights data/pretrain_model/vgg_imagenet_sampled.npy \ set +x NET_FINAL=`grep -B 1 "done solving" ${LOG} | grep "Wrote snapshot" | awk '{print $4}'` set -x @@ -47,3 +44,4 @@ time python ./tools/test_net.py --device ${DEV} --device_id ${DEV_ID} \ --cfg experiments/cfgs/faster_rcnn_end2end.yml \ --network MV3D_test \ ${EXTRA_ARGS} + diff --git a/lib/make.sh b/lib/make.sh index 15a616b..d2ea03a 100755 --- a/lib/make.sh +++ b/lib/make.sh @@ -11,11 +11,11 @@ cd roi_pooling_layer if [ -d "$CUDA_PATH" ]; then nvcc -std=c++11 -c -o roi_pooling_op.cu.o roi_pooling_op_gpu.cu.cc \ - -I $TF_INC -D GOOGLE_CUDA=1 -x cu -Xcompiler -fPIC $CXXFLAGS \ + -I $TF_INC -D GOOGLE_CUDA=1 -x cu -Xcompiler -fPIC $CXXFLAGS -D_GLIBCXX_USE_CXX11_ABI=0 \ -arch=sm_37 g++ -std=c++11 -shared -o roi_pooling.so roi_pooling_op.cc \ - roi_pooling_op.cu.o -I $TF_INC -D GOOGLE_CUDA=1 -fPIC $CXXFLAGS \ + roi_pooling_op.cu.o -I $TF_INC -D GOOGLE_CUDA=1 -fPIC $CXXFLAGS -D_GLIBCXX_USE_CXX11_ABI=0 \ -lcudart -L $CUDA_PATH/lib64 else g++ -std=c++11 -shared -o roi_pooling.so roi_pooling_op.cc \ diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..f6b0654 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,12 @@ +Cython==0.29.2 +easydict==1.9 +numpy==1.16.2 +scipy +Pillow +pyyaml +opencv-python==3.4.0.12 +tensorflow-gpu==1.0.0 +matplotlib +mayavi==4.6.0 +pyface==6.1.2 +traitsui==6.0.0 diff --git a/tools/demo_mv.py b/tools/demo_mv.py index 2edb6c5..a63f32b 100644 --- a/tools/demo_mv.py +++ b/tools/demo_mv.py @@ -226,7 +226,7 @@ def parse_args(): # im_names = ['000456', '000542', '001150', # '001763', '004545'] - root_dir = '/sdb-4T/raw_kitti/2011_09_26/object/0064/training' + root_dir = '/media/gary/HardDisk/Datasets/KiTTI/3d_object/testing' num = len(os.listdir(os.path.join(root_dir, 'image_2'))) for im_name in range(449, 570): diff --git a/tools/read_lidar.py b/tools/read_lidar.py index de2b752..8157337 100644 --- a/tools/read_lidar.py +++ b/tools/read_lidar.py @@ -1,9 +1,15 @@ +#!/usr/bin/env python + +# Copyright... + +""" Point Cloud Raw Data Bird Eye View Preprocess +""" + import numpy as np import os import matplotlib.pyplot as plt - # ============================================================================== # POINT_CLOUD_2_BIRDSEYE # ============================================================================== @@ -114,15 +120,16 @@ def point_cloud_2_top(points, return top -root_dir = "/sdb-4T/kitti/object/testing" +root_dir = "/media/gary/HardDisk/Datasets/KiTTI/3d_object/training/" velodyne = os.path.join(root_dir, "velodyne/") +num_pc = len(os.listdir(velodyne)) bird = os.path.join(root_dir, "lidar_bv/") side_range = (-30., 30.) fwd_range = (0., 60) height_range = (-2, 0.4) # -for i in range(400): +for i in range(num_pc): filename = velodyne + str(i).zfill(6) + ".bin" print("Processing: ", filename) scan = np.fromfile(filename, dtype=np.float32) @@ -141,5 +148,3 @@ def point_cloud_2_top(points, plt.imshow(test[:,:,8]) plt.show() - - diff --git a/tools/train_net.py b/tools/train_net.py index 2633a72..b894f17 100755 --- a/tools/train_net.py +++ b/tools/train_net.py @@ -94,3 +94,4 @@ def parse_args(): train_net(network, imdb, roidb, output_dir, pretrained_model=args.pretrained_model, max_iters=args.max_iters) +