inflearn logo
inflearn logo

ใ‚จใ‚ฏใ‚ปใƒซใจPythonใงๅญฆใถ็”ปๅƒใƒ‡ใƒผใ‚ฟ

[่ฌ›็พฉ่ฆ็ด„๏ผšใƒ”ใ‚ฏใ‚ปใƒซใ‹ใ‚‰ๅฎŸๅ‹™ใพใงใ€ๅๅˆบ่ช่ญ˜ใ‚ทใ‚นใƒ†ใƒ ใฎๆง‹็ฏ‰] ๅ‰ๅ‡ฆ็†๏ผˆPre-processing๏ผ‰๏ผšใƒŽใ‚คใ‚บใ‚’้™คๅŽปใ—ใ€ใ‚ฌใ‚ฆใ‚ทใ‚ขใƒณใƒ–ใƒฉใƒผใจใ‚ญใƒฃใƒ‹ใƒผใ‚จใƒƒใ‚ธใงๅๅˆบใฎใ€Œ้ชจ็ต„ใฟใ€ใ‚’ๆŠฝๅ‡บใ™ใ‚‹ๆ–นๆณ•ใ‚’ๅญฆใณใพใ—ใŸใ€‚ ใƒใƒ•ๅค‰ๆ›๏ผˆHough Transform๏ผ‰๏ผšๆ•ฐไธ‡ๅ€‹ใฎ็‚นใฎไธญใ‹ใ‚‰ $(\rho, \theta)$ ๆŠ•็ฅจใ‚ทใ‚นใƒ†ใƒ ใ‚’้€šใ˜ใฆใ€ๆœฌ็‰ฉใฎใ€Œ่ผช้ƒญใ€ใ‚’้ธๆŠœใ™ใ‚‹ใ‚ชใƒผใƒ‡ใ‚ฃใ‚ทใƒงใƒณ้Ž็จ‹ใ‚’็ตŒใพใ—ใŸใ€‚ ๅนพไฝ•ๅญฆ็š„ๆŽจ่ซ–๏ผš่ค‡้›‘ใช็›ด็ทšๆ–น็จ‹ๅผใ‚’ไปฃๅ…ฅๆณ•ใจ่กŒๅˆ—ใง่งฃใๆ˜Žใ‹ใ—ใ€ๅๅˆบใฎ4ใคใฎ้ ‚็‚น $(x, y)$ ใ‚’็ฒพๅฏ†ใซ็‰นๅฎšใ—ใพใ—ใŸใ€‚ ใƒ‡ใƒผใ‚ฟๆ•ดๅˆ—ใŠใ‚ˆใณใƒ•ใ‚ฃใƒซใ‚ฟใƒชใƒณใ‚ฐ๏ผš้‡ใชใ‚‹็ทšใ‚’้™คๅŽปใ—ใ€่ฆ‹ใคใ‘ใŸ็‚นใซใ€ŒๅทฆไธŠใ€ๅณไธŠใ€ๅณไธ‹ใ€ๅทฆไธ‹ใ€ใฎ้ †ใงใƒฉใƒ™ใƒซใ‚’ไป˜ใ‘ใ‚‹ใƒ‡ใƒผใ‚ฟ็ฒพ่ฃฝๆŠ€่ก“ใ‚’็ฟ’ๅพ—ใ—ใพใ—ใŸใ€‚ ้ญ”ๆณ•ใฎๅค‰ๆ›๏ผˆPerspective๏ผ‰๏ผšๆญชใ‚“ใ ็”ปๅƒใ‚’็œŸใฃ็›ดใใซ่ฃœๆญฃใ—ใŸใ‚Šใ€้€†ใซ่‡ชๅˆ†ใŒๆœ›ใ‚€้ก็ธใฎไธญใซ็”ปๅƒใ‚’ๅˆๆˆใ—ใŸใ‚Šใ™ใ‚‹ๅฎŸๅ‹™ๆŠ€่ก“ใง็ท ใ‚ใใใ‚Šใพใ—ใŸใ€‚ ๐Ÿ“ข ใ€Œๆ•ฐๅผใ‚’่ฆ‹ใ‚‹ใ ใ‘ใง้ ญใŒ็—›ใใชใ‚Šใพใ™ใ‹๏ผŸ ็งใ‚‚ใใ†ใงใ—ใŸใ€‚ใ€ ้–‹็™บ็พๅ ดใง็”ปๅƒๅ‡ฆ็†ใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆใ‚’ๅˆใ‚ใฆไปปใ•ใ‚ŒใŸๆ™‚ใ€็งใ‚’ๆœ€ใ‚‚่‹ฆใ—ใ‚ใŸใฎใฏ็”ป้ขใ„ใฃใฑใ„ใฎ $\sin, \cos$ ๆ•ฐๅผใงใ—ใŸใ€‚ๆœฌใซใฏๅ…ฌๅผใฐใ‹ใ‚ŠใŒไธฆใณใ€่‚ๅฟƒใฎใ€Œใชใœ่‡ชๅˆ†ใฎใ‚ณใƒผใƒ‰ใงใฏๅๅˆบใŒ่ฆ‹ใคใ‹ใ‚‰ใชใ„ใฎใ‹๏ผŸใ€ใจใ„ใ†ๅฎŸๅ‹™็š„ใชๅ•้กŒใซ็ญ”ใˆใฆใใ‚Œใ‚‹ๅ ดๆ‰€ใฏใ‚ใ‚Šใพใ›ใ‚“ใงใ—ใŸใ€‚ ็งใฏใ“ใฎ่ฌ›็พฉใ‚’้€šใ˜ใฆใ€ๅ—่ฌ›็”Ÿใฎ็š†ใ•ใ‚“ใŒ็›ด้ขใ™ใ‚‹3ใคใฎๆ…ขๆ€ง็š„ใชๅ•้กŒใ‚’่งฃๆฑบใ—ใŸใ„ใจ่€ƒใˆใฆใ„ใพใ™ใ€‚ 1. ใ€Œๆ•ฐๅญฆใŒๅฎ‡ๅฎ™่ชžใฎใ‚ˆใ†ใซๆ„Ÿใ˜ใ‚‰ใ‚Œใ‚‹ๅ•้กŒใ€ โ†’ [ๆฏ”ๅ–ฉใฎๅŠ›]ใง่งฃๆฑบใ—ใพใ™ใ€‚ ็›ด็ทšๆ–น็จ‹ๅผใ‚’ๅ˜ใซๆš—่จ˜ใ™ใ‚‹ใฎใงใฏใชใใ€ใ€ŒๅŽŸ็‚นใ‹ใ‚‰ๆ”พใŸใ‚ŒใŸใƒฌใƒผใ‚ถใƒผใ€ใจใ€Œๅฝฑ็ตต้Šใณใ€ใจใ—ใฆ็†่งฃใ—ใฆใ„ใŸใ ใใพใ™ใ€‚ๅŽŸ็†ใ‚’็†่งฃใ™ใ‚Œใฐใ€ใ‚ณใƒผใƒ‰ใฏ่‡ช็„ถใจใคใ„ใฆใใพใ™ใ€‚็งใŒๆ•ฐๅคšใใฎ่ฉฆ่กŒ้Œฏ่ชคใฎๆœซใซ่ฆ‹ใคใ‘ๅ‡บใ—ใŸใ€Œๆœ€ใ‚‚็ฐกๅ˜ใช่จ€่‘‰ใ€ใงๆ•ฐๅผใ‚’็ฟป่จณใ—ใพใ™ใ€‚ 2. ใ€Œ็†่ซ–ใฏ็Ÿฅใฃใฆใ„ใ‚‹ใŒๅฟœ็”จใŒใงใใชใ„ๅ•้กŒใ€ โ†’ [ใƒ‡ใƒผใ‚ฟใ‚ชใƒผใƒ‡ใ‚ฃใ‚ทใƒงใƒณ]ใง่งฃๆฑบใ—ใพใ™ใ€‚ ใชใœๅๅˆบใฎ่ผช้ƒญใŒ10ๅ€‹ใ‚‚ใงใใฆใ—ใพใ†ใฎใ‹ใ€ใชใœ้ ‚็‚นใฎ้ †็•ชใŒๆททใ–ใฃใฆใ—ใพใ†ใฎใ‹โ€ฆใ€‚ๅฎŸๅ‹™ใงๅฟ…ใš็›ด้ขใ™ใ‚‹ใ€Œๆฑšใ„ใƒ‡ใƒผใ‚ฟใ€ใ‚’ใฉใฎใ‚ˆใ†ใซ้ธๅˆฅใ—ๆ•ดๅˆ—ใ•ใ›ใ‚‹ใ‹ใ€็งใฎใƒ‡ใƒใƒƒใ‚ฐใƒŽใ‚ฆใƒใ‚ฆใ‚’ใ™ในใฆๅ…ฌ้–‹ใ—ใพใ—ใŸใ€‚็މ็Ÿณๆททไบคใฎไธญใ‹ใ‚‰ๆœฌ็‰ฉใ‚’่ฆ‹ๆฅตใ‚ใ‚‹ใ‚ชใƒผใƒ‡ใ‚ฃใ‚ทใƒงใƒณใƒญใ‚ธใƒƒใ‚ฏใฏใ€็š†ใ•ใ‚“ใฎใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆใ‚’ไธ€ๆฎตไธŠใฎใƒฌใƒ™ใƒซใธใจๅผ•ใไธŠใ’ใ‚‹ใฏใšใงใ™ใ€‚ 3. ใ€Œๆˆๆžœ็‰ฉใŒ้€€ๅฑˆใชๅ•้กŒใ€ โ†’ [ใ‚คใƒณใ‚ฟใƒฉใ‚ฏใƒ†ใ‚ฃใƒ–ๅˆๆˆ]ใง็ท ใ‚ใใใ‚Šใพใ™ใ€‚ ๅ˜ใซ็™ฝ้ป’ใฎใ‚จใƒƒใ‚ธใ‚’่ฆ‹ใ‚‹ใ ใ‘ใง็ต‚ใ‚ใ‚‹่ฌ›็พฉใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚่‡ชๅˆ†ใŒใƒžใ‚ฆใ‚นใงใ‚ฏใƒชใƒƒใ‚ฏใ—ใŸใ€Œๆฎฟๅ ‚ๅ…ฅใ‚Šใฎ้ก็ธใ€ใฎไธญใซใ€็š†ใ•ใ‚“ใŒไฝœใฃใŸๅๅˆบใ‚’ใƒ”ใ‚ฟใƒƒใจๅฝ“ใฆใฏใ‚ใ‚‹็žฌ้–“ใ€็š†ใ•ใ‚“ใฏๅ˜ใชใ‚‹ใ‚ณใƒผใƒ‡ใ‚ฃใƒณใ‚ฐใ‚’่ถ…ใˆใฆใ€Œ็ฉบ้–“ใ‚’ๆ“ใ‚‹้ญ”ๆณ•ใ€ใ‚’ไฝ“้จ“ใ™ใ‚‹ใ“ใจใซใชใ‚‹ใงใ—ใ‚‡ใ†ใ€‚ ใ€Œใ‚ณใƒณใƒ”ใƒฅใƒผใ‚ฟใƒ“ใ‚ธใƒงใƒณใฏๆ•ฐๅญฆใงใฏใชใใ€ไธ–็•Œใ‚’่ฆ‹ใคใ‚ใ‚‹ๆ–ฐใ—ใ„็›ฎใ‚’ๆŒใค้Ž็จ‹ใงใ™ใ€‚ใ€ ็งใŒ็พๅ ดใงๆ‚ŸใฃใŸใ€ใ‚ใฎๅˆบๆฟ€็š„ใชใ€ŒA-ha!ใ€ไฝ“้จ“ใ‚’็š†ใ•ใ‚“ใซไผใˆใŸใ„ใจๆ€ใ„ใพใ™ใ€‚ใ‚‚ใ†่ค‡้›‘ใช็†่ซ–ๆ›ธใฏ้–‰ใ˜ใฆใ‚‚ๅคงไธˆๅคซใงใ™ใ€‚็งใจไธ€็ท’ใซใ€ใ‚ณใƒผใƒ‰ใจใ„ใ†็ญ†ใง็”ปๅƒใ‚’่‡ช็”ฑ่‡ชๅœจใซๆใ„ใฆใฟใพใ—ใ‚‡ใ†๏ผ

5ๅ ใŒๅ—่ฌ›ไธญใงใ™ใ€‚

้›ฃๆ˜“ๅบฆ ๅˆ็ดš

ๅ—่ฌ›ๆœŸ้–“ ็„กๅˆถ้™

Python
Python
Excel
Excel
Python
Python
Excel
Excel
ใพใ ่ณชๅ•ใŒๆŠ•็จฟใ•ใ‚Œใฆใ„ใพใ›ใ‚“ใ€‚
ๆœ€ๅˆใฎ่ณชๅ•ใ‚’ๆŠ•็จฟใ—ใฆใ€ใ‚คใƒณใƒ•ใƒฉใƒณใจไธ€็ท’ใซๆˆ้•ทใ—ใพใ—ใ‚‡ใ†๏ผ

ๆœŸ้–“้™ๅฎšใ‚ปใƒผใƒซ

๏ฟฅ354

49%

๏ฟฅ707