[PHP] Tips Ekstraksi Metadata IPTC Foto

JURNAL IT - IPTC (International Press Telecommunications Council) adalah metadata yang digunakan untuk menyimpan informasi tambahan tentang sebuah gambar, seperti judul, keterangan, dan hak cipta. 

Metadata foto yang diambil menggunakan kamera

Ekstraksi IPTC dari gambar sangat berguna dalam pemrosesan dan pengelolaan koleksi gambar besar, karena dapat membantu dalam pencarian dan pengurutan gambar berdasarkan informasi tambahan yang disimpan dalam metadata IPTC.

Dalam artikel ini, saya akan memberikan tutorial tentang bagaimana cara ekstraksi IPTC dari gambar menggunakan bahasa pemrograman PHP. Tutorial ini akan terdiri dari beberapa langkah, yaitu:

Langkah 1: Memeriksa Apakah IPTC Tersedia

Sebelum Anda dapat mengambil informasi IPTC dari gambar, Anda perlu memastikan bahwa IPTC tersedia dalam gambar tersebut. Untuk melakukan ini, gunakan fungsi getimagesize yang mengembalikan array dengan informasi tentang gambar, termasuk IPTC.

$image_info = getimagesize('example.jpg', $iptc);
if(isset($iptc['APP13'])) {
   echo "IPTC tersedia";
} else {
   echo "IPTC tidak tersedia";
}

Langkah 2: Mengekstrak Informasi IPTC

Setelah Anda memastikan bahwa IPTC tersedia dalam gambar, Anda dapat mengambil informasi IPTC dengan menggunakan fungsi iptcparse.

$image_info = getimagesize('example.jpg', $iptc);
if(isset($iptc['APP13'])) {
   $iptc_data = iptcparse($iptc['APP13']);
   $Judul = $iptc_data['2#005'][0];
   $Deskripsi = $iptc_data['2#120'][0];
   $Fotografer = $iptc_data['2#080'][0];
   $HakCipta = $iptc_data['2#116'][0];
} else {
   echo "IPTC tidak tersedia";
}

Langkah 3: Menampilkan Informasi IPTC

Setelah Anda berhasil mengekstrak informasi IPTC dari gambar, Anda dapat menampilkannya di halaman web Anda.

$image_info = getimagesize('example.jpg', $iptc);
if(isset($iptc['APP13'])) {
   $iptc_data = iptcparse($iptc['APP13']);
   
   $Judul = $iptc_data['2#005'][0];
   $Deskripsi = $iptc_data['2#120'][0];
   $Fotografer = $iptc_data['2#080'][0];
   $HakCipta = $iptc_data['2#116'][0];
   
   echo "<img src="example.jpg" />";
   echo "Judul: $Judul<br />";
   echo "Deskripsi: $Deskripsi<br />";
   echo "Fotografer: $Fotografer<br />";
   echo "Hak Cipta: $HakCipta<br />";
} else {
   echo "IPTC tidak tersedia";
}

Dalam tutorial ini, kita telah membahas cara mengambil informasi IPTC dari gambar menggunakan fungsi PHP iptcparse. Dengan mengikuti langkah-langkah ini, Anda dapat dengan mudah mengekstrak informasi IPTC dari gambar dan menampilkannya di halaman web Anda.

iptcparse() adalah fungsi PHP yang digunakan untuk mem-parsing (mengurai) data IPTC (International Press Telecommunications Council) dari gambar. IPTC adalah format metadata standar yang digunakan dalam industri fotografi dan media untuk menyimpan informasi seperti judul, deskripsi, fotografer, dan hak cipta di dalam gambar.

Sedangkan getimagesize() adalah fungsi PHP yang digunakan untuk mengambil informasi tentang sebuah gambar, seperti lebar, tinggi, dan tipe file. Fungsi ini juga dapat digunakan untuk mengambil data IPTC dari gambar jika data IPTC tersedia dalam gambar tersebut.

Key APP13 adalah key yang digunakan untuk mengakses blok data IPTC di dalam gambar JPEG. Blok data IPTC ini disematkan ke dalam gambar sebagai bagian dari data EXIF (Exchangeable image file format), yang berisi metadata tambahan tentang gambar, seperti waktu pengambilan gambar, informasi kamera, dan lain-lain. Blok data IPTC ini diidentifikasi oleh penanda atau signature APP13.

Dalam pengambilan data IPTC dari gambar menggunakan fungsi getimagesize(), variabel $iptc digunakan untuk menyimpan data IPTC yang diambil dari gambar. Variabel ini tidak secara otomatis menghasilkan array data IPTC yang dapat dibaca. Oleh karena itu, untuk membaca data IPTC yang disimpan dalam variabel $iptc, kita perlu menggunakan fungsi iptcparse().

Dalam pengambilan data IPTC dari gambar, getimagesize() dan iptcparse() adalah dua fungsi yang sering digunakan bersamaan. Pertama, getimagesize() digunakan untuk mengambil informasi tentang gambar dan data IPTC jika tersedia. Kemudian, variabel $iptc yang digunakan dalam getimagesize() dioper ke fungsi iptcparse() untuk diparsing menjadi array yang dapat dibaca.

Berikut adalah beberapa contoh kode IPTC yang dapat diakses dengan fungsi iptcparse():

  • 2#005: Judul
  • 2#025: Kata Kunci
  • 2#055: Tanggal Dibuat
  • 2#060: Tanggal Diperbarui
  • 2#080: Fotografer
  • 2#085: Sumber
  • 2#090: Kota
  • 2#095: Negara
  • 2#101: Instruksi
  • 2#116: Hak Cipta
  • 2#120: Deskripsi
  • 2#122: Penulis

Kode-kode IPTC ini mewakili informasi yang umumnya digunakan dalam industri fotografi dan media untuk menyimpan metadata gambar. Namun, penting untuk diingat bahwa beberapa gambar mungkin tidak memiliki semua kode IPTC ini, dan beberapa gambar mungkin memiliki kode IPTC tambahan yang tidak terdaftar di atas.(*)

Posting Komentar

0 Komentar