THRESHOLD

ChangSeong Yooยท2023๋…„ 7์›” 19์ผ
0

Machine Learning

๋ชฉ๋ก ๋ณด๊ธฐ
1/5
post-thumbnail
post-custom-banner

๐Ÿ“์ด ํฌ์ŠคํŠธ์—์„œ Threshold์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.




์ •์˜

Threshold๋ž€ ์ž„๊ณ„์ ์œผ๋กœ Image Processing์— ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค.

Threshold๋Š” ์‰ฝ๊ฒŒ ์ดํ•ดํ•ด์„œ ๊ธฐ์ค€๊ฐ’์œผ๋กœ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.




๋ชฉ์ 

  • ์ด๋ฏธ์ง€์—์„œ ์›ํ•˜๋Š” ๊ฐ์ฒด๋‚˜ ํŠน์ง•์„ ๋ถ„๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉ
  • ์ด๋ฏธ์ง€๋ฅผ ์ด์ง„ํ™”ํ•˜๋ฉด ์˜์—ญ ๋ถ„ํ• , ๊ฐ์ฒด ๊ฒ€์ถœ, ๊ฒฝ๊ณ„ ์ถ”์ถœ, ์žก์Œ ์ œ๊ฑฐ ๋“ฑ ๋‹ค์–‘ํ•œ ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.




์›๋ฆฌ

์›๋ฆฌ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
์ด๋ฏธ์ง€ ๊ฐ์ฒด ์ด๋ฆ„์„ ' input ' ์ด๋ผ๊ณ  ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
input[ i , j ] ์˜ ๊ฐ’์ด threshold ๋ณด๋‹ค ํฌ๋ฉด A ๋ผ๋Š” ๊ฐ’์œผ๋กœ,
input[ i , j] ์˜ ๊ฐ’์ด threshold ๋ณด๋‹ค ์ž‘์œผ๋ฉด B ๋กœ ๋Œ€์ฒดํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด๋ ‡๊ฒŒ ์ด์ง„ ๋ถ„๋ฅ˜๋ฅผ ์ˆ˜ํ–‰ํ•˜์—ฌ ์„ ๋ช…ํ•˜๊ฒŒ ๊ฐ์ฒด๋‚˜ ํŠน์ง•์„ ๋ถ„๋ฆฌํ•ด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.




์ฝ”๋“œ ์ดํ•ด

์ฝ”๋“œ๋กœ ์ดํ•ดํ•ด๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

threshold = 96

for i in range(height):
  for j in range(width):
    if input[i, j] > threshold:
      output[i, j] = 255
    else:
      output[i, j] = 0

Threshold ๊ณผ์ •์€ ์œ„์™€ ๊ฐ™๊ณ , ๋น„๊ต์  ๊ฐ„๋‹จํ•œ ์กฐ๊ฑด๋ฌธ์œผ๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์œผ๋กœ ์ด์ง„ ๋ถ„๋ฅ˜ Threshold์˜ A ์™€ B ์˜ ๊ฐ’์€ 255 ์™€ 0 ์œผ๋กœ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
โœ…๊ทธ ์ด์œ ๋Š” ๊ทน๊ณผ ๊ทน์œผ๋กœ ๊ทน๋ช…ํ•˜๊ฒŒ ์ฐจ์ด๋ฅผ ๋šœ๋ ทํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ž…๋‹ˆ๋‹ค.

์ €๋Š” threshold๋ฅผ 96์œผ๋กœ ํ•˜์—ฌ ์žก์Œ์ด ๋งŽ์ด ์žˆ๋Š” ์ด๋ฏธ์ง€๋ฅผ threshold ๊ณผ์ •์„ ์น˜๋ค„๋ดค์Šต๋‹ˆ๋‹ค.

Before Threshold

After Threshold

์ด์™€ ๊ฐ™์ด 255(WHITE) ์™€ 0(BLACK) ์œผ๋กœ ์ด์ง„ ๋ถ„๋ฅ˜๋˜์–ด ๊ฐ์ฒด๋กœ ๋ณด์ด๋Š” ๊ฒƒ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

profile
๐’ฅ๐“Š๐“ƒ๐’พโ„ด๐“‡ ๐’Ÿ๐’ถ๐“‰๐’ถ ๐’ฎ๐’ธ๐’พโ„ฏ๐“ƒ๐“‰๐’พ๐“ˆ๐“‰
post-custom-banner

1๊ฐœ์˜ ๋Œ“๊ธ€

comment-user-thumbnail
2023๋…„ 7์›” 19์ผ

์œ ์ตํ•œ ๊ธ€ ์ž˜ ๋ดค์Šต๋‹ˆ๋‹ค, ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋‹ต๊ธ€ ๋‹ฌ๊ธฐ