2021-01-01ãã1å¹´éã®è¨äºä¸è¦§
æ¥ã®ãã³ç¥ãã·ã¼ã«ç¹æ°éè¨ã®ç¶ãã§ãã ååã®ãããã ååã¾ã§ã§ãã²ã¨ã¾ãç¹æ°æåã®è¼ªéãåããããã«ãªãã¾ããã Hue,Saturationæ å ±ã使ã£ã¦2å¤å é層èªèããã§è¼ªéãæ¤åºãæä¸ä½é層ã®1ã¤ä¸ã®è¼ªéãæ¤åº ããããããã³ãã¬ã¼ããããã³ã°ã使â¦
å¼ãç¶ãã®æ¥ã®ãã³ç¥ãã·ã¼ã«ç¹æ°éè¨ã ååã®çµæåç¢ºèª ååã®çµæãããè¦ãã¨ãç¹æ°æåã®è¼ªéããã¡ãã¨åãã¦ããªãé¨åãããã¾ããã 3ã¤ç®ã®ç»åã§ãä¸å¤®ä¸é¨ã®'1'ã'2'ã®è¼ªéãåãã¦ãã¾ããã 対å¿ãæ¤è¨ãã¾ãã æ§åãã§ã㯠ã¾ãã¯åé¡ã®ç»â¦
æ¥ã®ãã³ç¥ãã·ã¼ã«ç¹æ°éè¨ã®ç¶ãã§ãã ä»åã®å 容 ååãæ¥ã®ãã³ç¥ãç»åããç¹æ°æåã®è¼ªéãåå¾ã§ãã¾ããããã¾ã 1ç»åã§ãã試ãã¦ããªãã®ã§ã ä»ã®ç»åã§ããã£ã¦ã¿ã¾ãã é¢æ°å ãã¤ãéãã®æé ã§ãããå 容ãå¢ãã¦ããã®ã§ãé¢æ°åãã¦ããâ¦
ååã®ç¶ãã§ãã æ¥ã®ãã³ç¥ãç¹æ°éè¨ãé²ãã¦ããã¾ãã æ¹éåæ¤è¨ ååã®çµæãæ¯ãè¿ãã¤ã¤ãæ¹ãã¦æ¹å¼ãæ¤è¨ãã¾ãã ååã®ç¶æ³ Hueç»åã§ã®2å¤åãããã·ã¼ã«é åã®è¼ªéåå¾ãå®æ½ãã ã·ã¼ã«ã®éãªãã«ããã輪éã©ãããã¤ãªãã£ã¦ãã¾ã£ã¦ãã â¦
ååã®å 容 æ¥ã®ãã³ç¥ãç¹æ°éè¨ã§ãæåã«å°ç´å¤å½¢ã®æ¤åºããããã¨ãèãã¦ãã¾ããããã©ããé£ããããªã®ã§è«¦ããæ¹åã§ã åã«èããæé ã¯ã å°ç´å¤å½¢ãåå¾ãã å°å½±å¤æãããã®ã¨ãã¹ã±ã¼ãªã³ã°(å°ç´ãåºæºã¨ãã¦ç»åãµã¤ãºã調æ´ãã)ã«å¿ è¦ å°å½±â¦
ååã®ç¶ãã«ãªãã¾ãã ãããã ååã¾ã§ã®ããããã§ãã 以ä¸ã®ãããªæé ã§å°ç´å¤å½¢åå¾ã試ã¿ã¾ããã Cannyã¨ãã¸æ¤åºå®æ½ 輪éæ¤åº(æå¤å¨ã®ã¿)å®æ½ é¢ç©æ大ã®è¼ªéãé¸ã¶ 輪éãåç´ãªå¤è§å½¢ã§è¿ä¼¼ãåè§å½¢ã«ãªã£ã¦ããã°OK åé¡ã ã£ãã®ã¯ã èæ¯â¦
äºåéããæ¥ã®ãã³ç¥ãå°ç´ã®å¤æ æ¤åºã§ãã ä»å¾ã¯åºæ¬çã«Jupyter notebookã§è©¦ããå¾ãmarkdownã§ãã¦ã³ãã¼ããã¦ããã°ã«è²¼ãä»ããå½¢ã«ãªãã¨æãã¾ãã 21.11.22 ä¿®æ£ cv2.drawContouré¢æ°ã®ä½¿ãæ¹ã«ééããããã¾ãã⦠第2å¼æ°ã¯è¼ªéã®ãªã¹ãã«ãâ¦
ã³ãã³ãããã³ããä¸ã§ãã£ã¨ãã£ã¦ããã®ã大å¤ãªã®ã§ãJupyter notebookã使ã£ã¦ã¿ã¾ããã è¦ãç®ããããªãããã Jupyter notebook 使ãæ¹ Anacondaãã¤ã³ã¹ãã¼ã«ããã¨ãä¸ç·ã«Jupyter notebookãå ¥ã£ã¦ãã¾ãã Windows10ç°å¢ã§ä½¿ã£ã¦ãã¾ãããæ¤â¦
ä»åã¯OpenCVãã¿ã§ãã ãã¾ã¾ã§ãã¥ã¼ããªã¢ã«ã追ã£ã¦ãã¾ããããããããæ¬é¡ã®æ¥ã®ãã³ç¥ãéè¨ãèãã¦ããããã¨ã 使ããããªæ ä»ã¾ã§ãã¥ã¼ããªã¢ã«ãè¦ã¦ããä¸ã§ãããã¤ãæç¨ãããªãã¯ããã¯ãããã¾ããã å°å½±å¤æ å°ç´ãçæ£é¢ããæ®å½±ãâ¦
ååã«ã¹ã¿ãã¤ãºããFSBLãä½ã£ãã®ã§ããããPetalinuxããã¸ã§ã¯ãã§åãè¾¼ã¿ã¾ãã ã¾ããMACã¢ãã¬ã¹é¢é£ã®è¨å®ãPetalinuxã§è¡ãã¾ãã ããã«ã¤ãã§ã«ãã«ã¼ããã¡ã¤ã«ã·ã¹ãã ãSDã«ã¼ãã«è¨å®ãã¾ãã Petalinuxä½æ¥ petalinux-configã³ãã³ããå®â¦
ZYBOã®ç¶ãã§ãã ä»åã¯ã以åã«ãã£ãFSBLã®ã«ã¹ã¿ãã¤ãºããVitisãã¼ã«ã使ã£ã¦ãã£ã¦ã¿ããã¨æãã¾ãã ãã®ã«ã¹ã¿ãã¤ãºã¯ãZYBOã®EEPROMã«å ¥ã£ã¦ããMACã¢ãã¬ã¹ãåå¾ããããã®ãã®ã§ãã Vitis使ãã®ã¯åãã¦ã§ãããã©ããªæããªã®ãã ä¸å¿Vitiâ¦
ä»åã¯ãOpenCVãã¥ã¼ããªã¢ã«ã®ä»¥ä¸ã®ãã¼ã¸ãåèã«é²ãã¦ã¿ããã¨æãã¾ãã OpenCV: Epipolar Geometry ã¨ããã¼ã©å¹¾ä½ã®çè«ã¯ãã¥ã¼ããªã¢ã«ãµã¤ãã®èª¬æãåç §ã§ã ä»åã®ãã¼ãç»å ç¹å¾´ç¹æ¤åºãç¹å¾´éç®åº ãããã³ã° Fundamental matrixè¨ç® Epipoâ¦
ååã®ç¶ãã§ãã ååã¯Vivadoããã¸ã§ã¯ãã§ã®ãããã¹ããªã¼ã çæã¾ã§è¡ãã¾ãããä»åã¯ãããPetalinuxããã¸ã§ã¯ãã«åãè¾¼ã¿ã¾ãã Petalinuxãã¼ã«ã§ã®æé Petalinuxããã¸ã§ã¯ãã®ä½æ ã¾ãã¯Petalinuxããã¸ã§ã¯ãã®ä½æã å ¥å: petalinux-creaâ¦
ä¹ ãã¶ãã«ZYBOã®ã»ããé²ãããã¨æãã¾ãã å 容 åå(æ¢ã«1å¹´åâ¦)ã¾ã§ã¯ VMWare + Ubuntu18.04 Vivado 2017.4 Petalinux 2017.4 ã®ç°å¢ã使ã£ã¦ãã¾ããã ãã ãä»åã¯Xilinxãã¼ã«ã®Vitisã使ã£ã¦ããããã¨æã£ã¦ãã¦ã使ç¨ãããã¼ã«ãã¼ã¸ã§ã³ãæ°ãâ¦
ä»åãã ããããã¥ã¼ããªã¢ã«éãã®å 容ã§ãã åã åã¨ååã§ãéãè¦ç¹ããåã対象ãæ®å½±ãã2ã¤ã®ç»åã§ã®ç¹ã®å¯¾å¿ãè¦ã¤ãããã¨ãã§ãã¾ããã ãã®çµæã使ã£ã¦ãå°å½±å¤æã®è¡åãè¨ç®ããç»åã®è¦ç¹å¤æããããã¨ãã§ãã¾ããããããã£ã¦ã¿ã¾ããâ¦
ååã®ããæ®ãã§ãFLANNã§ã®ç¹å¾´ç¹ãããã³ã°ãããã¾ãã OpenCV: Feature Matching ç¹å¾´ç¹ã®ãããã³ã° â OpenCV-Python Tutorials 1 documentation æ¦è¦ ååã®ããããã§ãããFLANNã¯Fast Library for Approximate Nearest Neighborã®ç¥ã§ãè¿ä¼¼çã«ç¹â¦
ä»åã¯ç¹å¾´ç¹ã®ãããã³ã°ã§ãã ä»ã¾ã§ã«ãã£ãç¹å¾´ç¹æ¤åºãç¹å¾´éçæãå ã«ã2ã¤ã®ç»åãæ¯è¼ãåããã®ãåã£ã¦ããç¹ãæ¢ãã ã¨ãããããªæãã§ãã 2ã¤ã®ç»åã¨ããã®ã¯ãå ·ä½çã«ã¯ã¹ãã¬ãªã«ã¡ã©ã§æ®å½±ããç»åã ã£ãããã¦ã©ã¼ãªã¼ãæ¢ãã®ã¦ã©ã¼â¦
ååã®äºåéããORBããã£ã¦ã¿ã¾ãã OpenCV: ORB (Oriented FAST and Rotated BRIEF) ORB (Oriented FAST and Rotated BRIEF) â OpenCV-Python Tutorials 1 documentation ãã£ããç´¹ä»ãçè« SIFTãSURFã¯ç¹è¨±ãåããã¦ãã¦èªç±ã«ä½¿ããªã ãã®ä»£æ¿ã¨ãâ¦
ä»åã¯BRIEFããã£ã¦ã¿ã¾ãã OpenCV: BRIEF (Binary Robust Independent Elementary Features) ãã£ããçè« BRIEFã¯ç»åä¸ã®ç¹å¾´ç¹ã®ç¹å¾´éãçæããæ¹å¼ã®ã²ã¨ã¤ã§ãã SIFTãSURFã§ã¯ãç¹å¾´ç¹ã®ç¹å¾´éã表ãã®ã«ãããªãã«å¤§ããªãã¼ã¿é(1ç¹ãããSIFTâ¦
ååã®ç¶ããFASTã¢ã«ã´ãªãºã ã試ãã¾ãã ã³ã¼ãã¼æ¤åºã®ããã®FASTã¢ã«ã´ãªãºã â OpenCV-Python Tutorials 1 documentation ãã£ããçè« ç»åã®åç»ç´ ã«ã¤ãã¦ããããä¸å¿ã¨ãã¦å¨é·16ãã¯ã»ã«ã«ãªãåå¨(åå¾ããã3ãã¯ã»ã«) ä¸ã®ç»ç´ ã調ã¹ã決ã¾ã£â¦
ååã®SIFTã«ç¶ãã¦ãä»åº¦ã¯SURFã§ã®ç¹å¾´ç¹æ¤åºã§ãã SURF (Speeded-Up Robust Features)ã®å°å ¥ â OpenCV-Python Tutorials 1 documentation SURFã¯SIFTã«æ¯ã¹ã¦é«éåãç®æããã¢ã«ã´ãªãºã ã¨ã®ãã¨ã çºè¡¨ã¯2006å¹´ã«ãªãã¾ããç¹è¨±ãåããã¦ãã¦ãã¾ã â¦
èªåã®PCã®ãã¼ããã£ã¹ã¯å®¹éããããã256GBãããªããiPhoneã§æ®ã£ãåç(åä¾ã®åç)ãå¢ãã¦ããã®ã§ãNASãè²·ã£ã¦ã¿ã¾ããã PCãã¼ã¿ã¨iPhoneåçã®ããã¯ã¢ãããç®çã NASåçªãä»æ§ è³¼å ¥ããã®ã¯QNAP社ã®TS-230ã è³¼å ¥ã®æ±ºãæã¨ãã¦ã¯ã RAID1æ§â¦
ä»åã¯SIFTãæ±ãã¾ãã SIFT (Scale-Invariant Feature Transform)ã®å°å ¥ â OpenCV-Python Tutorials 1 documentation SIFTã¯ã2004å¹´ã«ããªãã£ãã·ã¥ã³ãã³ãã¢å¤§å¦ã®D.Loweãçºè¡¨ãããã®ã§ã ãã¼ãã¤ã³ãã®æ¤åºãç¹å¾´éã®è¨ç®ãè¡ãã¢ã«ã´ãªãºã ã¨ã®ãâ¦
ä»åã¯Harrisã³ã¼ãã¼æ¤åºãããã¾ãã ä»æ´ã§ããããã¥ã¼ããªã¢ã«ãµã¤ãã®é çªéãã§ãªããå¤å°é£ã°ãã¦ããé¨åãããã¾ãã Harrisã³ã¼ãã¼æ¤åº â OpenCV-Python Tutorials 1 documentation Harrisã³ã¼ãã¼æ¤åº çè«ã¯ãã¥ã¼ããªã¢ã«ãµã¤ãã«æ¸ãã¦ããâ¦
ã©ãã©ãç¶ããé²ãã¾ãã 次ã¯ããå¤æã«ããåæ¤åºã ããå¤æã«ããåæ¤åº â OpenCV-Python Tutorials 1 documentation ããå¤æã«ããåæ¤åº åä¸ã®ç¹ã¯ã以ä¸ã®å¼ãæºããã¾ãã ç´ç·æ¤åºã®ã¨ãã¨åæ§ããã®å¼ã®ãã©ã¡ã¼ã¿()ã®ç©ºéã«ã ãã®åä¸ã«ä¹ã£â¦
ä»åã¯ããå¤æããã£ã¦ã¿ã¾ãã ããå¤æã«ããç´ç·æ¤åº â OpenCV-Python Tutorials 1 documentation ããå¤æ ããå¤æã¯2å¤ç»åãç´ç·ã®ãã©ã¡ã¼ã¿ç©ºéã«æã£ã¦ãããããªå¤æã ã¨ãããã¨ã§ããã®ããªã 空éä¸ã®ç´ç·ã¯ã以ä¸ã®å¼ã§è¡¨ããã¨ãã§ãã¾ãâ¦
ããªãæéã空ãã¦ãã¾ãã¾ãã⦠å¼ãç¶ãOpenCVã®ãã¥ã¼ããªã¢ã«ããã£ã¦ããããã¨æãã¾ãã ä»åã¯ãã³ãã¬ã¼ããããã³ã°ãããããã¨ã æ¥ã®ãã³ç¥ãã·ã¼ã«ç¹æ°éè¨çã«ã¯çµæ§ä½¿ããããªå 容ã§ãã ãã³ãã¬ã¼ããããã³ã° â OpenCV-Python Tutorialsâ¦
OpenCVãã¥ã¼ããªã¢ã«ã®ç¶ãã§ãã OpenCVã«ããã輪é(é å) â OpenCV-Python Tutorials 1 documentation ã¨ãããã輪éæ¤åºã表示 cv2.findContours()é¢æ°ã§ã輪éãæ¤åºãããã¨ãã§ãã¾ãã 詳細ã¯ã¨ãããããã£ã¦ã¿ã¾ãã 2å¤ç»åã«å¯¾ãã¦ã®å¦çã¨ãªâ¦
OpenCVã®ãã¥ã¼ããªã¢ã«éãã«é²ãã¾ãã ä»åã®å 容ã¯ã·ã¼ã«ç¹æ°éè¨ã«å½¹ç«ã¡ããã§ãã ç»åã®å¾é â OpenCV-Python Tutorials 1 documentation Cannyæ³ã«ããã¨ãã¸æ¤åº â OpenCV-Python Tutorials 1 documentation Sobelãã£ã«ã¿ãLaplacianãã£ã«ã¿ Sobâ¦
ä»åã¯ããã¥ã¼ããªã¢ã«éããã¢ã«ãã©ãã¸ã¼å¤æã§ãã ã¢ã«ãã©ãã¸ã¼å¤æ â OpenCV-Python Tutorials 1 documentation ã¢ã«ãã©ãã¸ã¼ï¼ ã¢ã«ãã©ãã¸ã¼(morphology)ã¨ã¯ã ãä¸è¬ã«ãå½¢æ ãæ§é ããããã ã¢ã«ãã©ãã¸ã¼ã¨ã¯ - ã³ããã³ã¯ ã ããã§ããâ¦