Bagaimana komputer memproses gambar?

May 03 2021

Jawaban

JeremiahDSeitz Feb 19 2019 at 15:00

Ini adalah pertanyaan yang sulit dijawab, hanya karena pertanyaannya cukup terbuka. Saya akan melakukan yang terbaik meskipun …

Pertama, mari kita periksa kata "proses". Saya akan menganggap itu berarti membaca file dari disk dan menampilkannya di layar. Jika itu salah, jelaskan apa yang sebenarnya Anda maksud dan saya akan mengubah jawaban saya sesuai dengan itu.

Bergantung pada format gambar, data gambar akan dikompresi atau tidak. Format terkompresi yang paling umum adalah BMP. Format terkompresi yang umum adalah JPG, GIF, dan PNG (WebP mendapatkan daya tarik akhir-akhir ini).

CATATAN: Saya hanya akan membahas format raster, karena ini yang paling umum. Ada juga format vektor, tetapi ditangani dengan cara yang sama sekali berbeda.

Langkah pertama adalah agar aplikasi menemukan dan membuka file yang dimaksud. Setelah file dibuka, aplikasi penampil membaca data dari file ke dalam memori kerja.

Semua format gambar berisi informasi tambahan untuk menunjukkan berbagai bit informasi, seperti dimensi gambar, kedalaman bit, dan item lainnya. Informasi itu diekstraksi dari data file dan disimpan.

Dengan asumsi bahwa data gambar dikompresi, itu akan diekstraksi dan dilewatkan melalui codec (coder/decoder), yang merupakan istilah teknologi untuk kode yang dapat memampatkan atau mendekompresi data (gambar, audio, dan video).

Setelah codec menyelesaikan tugasnya, ia mengembalikan banyak byte yang berisi data gambar sebenarnya.

Di sinilah data header berperan. Untuk menampilkan gambar, sebuah aplikasi memerlukan empat hal: Lebar gambar, tinggi gambar, format piksel (kedalaman bit dan urutan), dan data yang tidak terkompresi. Dua variabel pertama digunakan untuk mengatur ukuran gambar keluaran. Kemudian, setiap piksel dalam data gambar dibaca, dikonversi ke kedalaman bit asli dan diformat menggunakan format piksel dari header gambar, dan disalin ke tempat yang sesuai di data keluaran.

Hasil akhir kemudian disalin ke memori video, di mana ia ditampilkan kepada pengguna.

Perlu diingat, ini adalah deskripsi yang agak disederhanakan. Setiap langkah di atas dapat dilakukan dengan berbagai cara, tetapi konsep umumnya sudah benar.

KaminiKantaMohanty Feb 21 2019 at 10:02

Pada tingkat konseptual, gambar direpresentasikan sebagai matriks dua dimensi. Jika itu adalah gambar berwarna, Anda berurusan dengan tiga matriks yang masing-masing sesuai dengan satu saluran warna. Dalam kasus gambar hitam putih, Anda berurusan dengan satu matriks. Unsur-unsur matriks biasanya memiliki nilai dalam kisaran 0 hingga 255.

Komputer dapat memproses satu matriks masukan (atau matriks) dari suatu gambar untuk menghasilkan matriks (atau matriks) keluaran dari gambar. Atau, satu matriks input (atau matriks) dari suatu gambar dapat diproses untuk menghasilkan angka atau skalar keluaran, seperti memberi tahu apakah gambar cocok dengan satu objek atau wajah tertentu dari seseorang atau jumlah wajah dalam gambar dan seterusnya.

Algoritma matematika yang tepat yang beroperasi pada matriks input bisa sangat kompleks.