Pada prinsipnya, ini adalah tindak lanjut terhadap masalah dari beberapa minggu yang lalu , meskipun ini tentang algoritma secara umum tanpa aplikasi untuk masalah aktual saya.
Algoritma pada dasarnya mencari melalui semua garis dalam gambar, mulai dari kiri atas, sampai menemukan pixel yang merupakan batas. Dalam pseudo-C ++:
int start = 0;
for(int i=0; i<amount_of_pixels; ++i)
{
if(pixels[i] == border)
{
start = i;
break;
}
}
Ketika menemukan satu, ia memulai algoritma kotak marching dan menemukan kontur ke objek apa pun milik pixel.
Katakanlah saya memiliki sesuatu seperti ini:
Di mana semuanya kecuali warna putih adalah perbatasan.
Dan telah menemukan titik kontur gumpalan pertama:
Untuk algoritma umum sudah berakhir. Ia menemukan kontur dan telah melakukan tugasnya. Bagaimana saya bisa beralih ke dua gumpalan lainnya untuk menemukan kontur mereka juga?