Anda di halaman 1dari 30

Komputasi Data Spasial

Text File dan Binary File

File Systems
File Nama yang diberikan untuk arsip, atau himpunan data, digunakan untuk mengorganisasikan data pada media penyimpanan (memory).

File system Sistem yang digunakan untuk mengelola file dari sisi atau berdasarkan pada operating system-nya. Directory Nama yang diberikan untuk tempat atau himpunan file.
2

File Types
File Type Jenis informasi yang terdapat dalam sebuah dokumen. Pada umumnya, tanpa memperhatikan formatnya, mengandung jenis informasi yang spesifik.

File extension Bagian dari nama file yang mengindikasikan jenis informasi yang terdapat dalam file. Nama file acapkali dibagi dalam dua bagian, yaitu: File name . File Extension

File Types
Apakah jenis informasi dalam file berikut : Chapter.doc Figure1.jpg Interview.wav MyFavorite.mp3
Figure 11.1 Some common file types and their extensions

Apa keuntungan penggunaan extension yang tepat ?


4

Text and Binary Files


Text file Sebuah file yang berisi characters dari ASCII atau himpunan karakter Unicode. Binary file Sebuah file yang berisi data dengan format yg tertentu, membutuhkan program tersendiri untuk menginterpretasikan (membaca) setiap bit-nya.

Text and Binary Files


Terminologi text file dan binary file kadang rancu, karena pada akhirnya semua informasi atau data dalam komputer disimpan dalam bentuk biner. Text files adalah file yang diformat per 8 atau 16 bits, yang diterjemaahkan sebagai karakter. Binary files adalah file yang diformat dalam secara khusus.

Text File vs Binary File


Sebuah file disimpan dalam media penyimpanan sebagai rangkaian dari bits, isi file tersebut dapat dibaca oleh program aplikasi sebagai text file maupaun binary file, seperti contoh di bawah ini.

Text Files
Sebuah text file merupakan file yang berisi karakter, bukan merupakan integer atau floating point atau struktur penyimpanan data lainnya. Untuk menyimpan/membaca text file, perlu adanya interpreter (penerjemah) dari/ke format karakter. Beberapa file hanya mampu menyimpan tipe data karakter, kebanyakan adalah file streams (input/output objek dalam OO programming, seperti C++) untuk keyboard, monitor and printer. Oleh karenanya, kita perlu fungsi khusus untuk berhubungan dengan device tersebut. these devices.

Binary Files
Sebuah file binary merupakan kumpulan data yang didimpan dalam bentuk format internal dalam komputer. Oleh karenanya, data dapat berupa integer (termasuk jenis data lainnya yang disimpan dalam bentuk unsigned integer seperti gambar, audio, atau video), floating point atau jenis struktur data lainnya. Tidak seperti text file, binary file mengandung data yang berarti jika dibaca oleh sebuah program yang tepat. Jika data berupa text, maka setiap satu byte akan digunakan untuk merepresentasikan satu karakter (dlm kode ASCII). Tetapi, jika data berupa angka, maka 2 atau lebih byte dipertimbangkan untuk menyimpan setiap data angka.

Binary files
File binary tidak dapat dibuat dengan menggunakan editor (seperti halnya text file). Sebuah file binary dibuat dengan ditulis oleh sebuah program, seperti oleh C-program. Jika kita (manusia) tidak diharuskan untuk membaca file, lebih baik file disimpan dalam bentuk binary, sehingga dapat menghemat waktu dan memory. Representasi internal dalam bit sebaiknya ditulis dalam sebuah file binary. Isi dari basisdata, umumnya disimpan dalam binary.

Contoh: Binary File


Membuat dan membaca File Binary dgn jenis data Integer, dan menjadikannya vektor integer.
FILE *binaryp, *inbinp; int i, list[255]; binaryp = fopen("nums.bin", "wb"); for (i = 2; i <= 5FF; i += 2) fwrite(&i, sizeof (int), 1, binaryp); fclose(binaryp); /* read 250 integers into a vector */ inbinp = fopen(nums.bin,rb); fread(list, sizeof(int), 250, inbinp); fclose(inbinp);

Contoh: Outline dan Fungsi utama dalam Basis Data (Metals Database Inquiry Program)

/* * Displays all metals in the database that satisfy the search * parameters specified by the program user. */ #include <stdio.h> #include <string.h> #define #define #define #define #define MAX_DENSITY MAX_MELT_PT MAX_TENS_MOD MAX_DAYS STR_SIZ 20.0 4000 350 90 80 /*maximum density (g/cm^3)*/ /*maximum melting point(deg.C)*/ /*maximum tensile modulus(GPa)*/ /* maximum days to delivery */ /* number of characters in string*/

typedef struct { /* metal structure type */ char name[STR_SIZ]; double density; /* g/cm^3 */ int melt_pt, /* melting point in degrees C */ tens_mod, /* tensile modulus in GPa */ days_to_deliv; /* days from order to delivery */ } metal_t; typedef struct { /* search parameter bounds type */ char low_name[STR_SIZ], high_name[STR_SIZ]; double low_density, high_density; int low_melt_pt, high_melt_pt, low_tens_mod, high_tens_mod, low_days, high_days; } search_params_t;

/* /* * Prompts the user to enter the search parameters. */ search_params_t get_params(void); /* * Displays records of all metals in the inventory that satisfy search parameters. */

Fig. 10.4 cont. Insert prototypes of other functions needed.*/

void display_match(FILE *databasep, /* input - file pointer to binary database file*/ search_params_t params);/* input - search parameter bounds*/ int main(void){ char inv_filename[STR_SIZ]; /*name of inventory file */ FILE *inventoryp; /* inventory file pointer */ search_params_t params; /* search parameter bounds */ /* Get name of inventory file and open it printf("Enter name of inventory file> "); scanf("%s", inv_filename); fflush(stdin); inventoryp = fopen(inv_filename, "rb"); */

/* Get the search parameters params = get_params();

*/

/*Display all metals that satisfy the search parameters */ display_match(inventoryp, params); return(0);

Komputasi Data Spasial


Data Raster

Jenis Data Gambar


Data Raster

Data Vektor

Data Raster

Struktur Data Raster


Citra dijital (gambar raster) merupakan fungsi dari nilai piksel pada bidang dwimatra (2 D), dalam matematik dapat disimbolkan:
(x,y) : koordinat pada bidang dwimatra f(x,y) : intensitas nilai piksel pada titik (x,y)
y . f(x,y)

Struktur Data Raster


Citra dijital yang memiliki ukuran tinggi N dan lebar M, dan memiliki derajat keabuan dapat dianggap sebagai fungsi : 0 x M f(x,y) 0 y N 0 f L Citra dijital berukuran N x M lazim dinyatakan dengan matriks berukuran N baris dan M kolom.

Nilai Intensitas
Masing-masing elemen pada citra dijital (elemen matrik) disebut image element, picture element atau pixel (piksel). Proses kuantifikasi nilai intensitas piksel membagi skala keabuan (grey level) adalah (0,L) menjadi G buah level yang dinyatakan oleh bilanga bulat (integer), biasanya G diambil perpangkatan dari 2.
Skala Keabuan Rentang Nilai Keabuan Pixel Depth Keterangan
21 22 23 28 215 atau 216 224 16,777,216 0.1 (0,7) (0,15) (0,255) 1 bit 2 bit 3 bit 8 bit 15/16 bit 24 bit 8 bit Grayscale, 8 bit color High Color True Color monochrome

230, 236, 248

30/36/48 bit

Deep Color

Volume Citra
Penyimpanan citra dijital yang diterok menjadi N x M piksel dan dikuantifikasi menjadi G = 2m level derajat keabuan membutuhkan memori sebanyak : b = N x M x m bit Sebagai contoh, sebuah citra dijital dengan ukuran 512 x 512 piksel dengan 256 derajat keabuan membutuhkan memori sebesar 512 x 512 x 8 = 2048.000 bit.

Koordinat Citra dan Koordinat Layar


Koordinat Citra (i,j) dan Layar (x,y)
(0,0) j . f(i,j) (0,0) x . F(x,y)

i
Sistem Koordinat Citra

y
Sistem Koordinat Layar

Pengarsipan
Citra dijital biasanya disimpan dalam arip biner. Arsip ini biasanya memiliki header (ada juga yg tidak). Header adalah informasi yang terletak pada bagian awal arsip, header berisi informasi bagaimana citra disimpan dalam file. Sekarang ini banyak sekali format penyimpanan citra dalam file : BMP, JPG, TIFF, PCX, GIF, RAW, dan lainnya. Di bawah ini salah satu contoh format RAW.
N M 2 byte 2 byte M byte M byte N kali M byte M byte

Algoritma Membaca RAW


N M 2 byte 2 byte M byte M byte N kali M byte M byte

Baca header sejumlah 4 byte, baca baris (N) dan kolom (M). Baca citra dijital baris per baris. Baca baris pertama sejumlah M byte, dari byte ke 5 hingga M+5. Baca baris selanjutnya, hingga sejumlah baris (N kali).

Contoh Data Raw


Ukuran piksel 7 x 7, depth 8 bit, satu warna.
00 FF FF FF 00 255 0 FF FF FF 07 FF FF FF 00 FF FF FF 00 FF FF FF 00 FF FF FF 07 00 00 00 00 00 00 00 FF FF FF 00 FF FF FF FF FF FF 00 FF FF FF FF FF FF 00 FF FF FF

Filee dalam bentuk Hexadesimal : 00070007FFFFFF00FFFFFFFFFFFF00FFFFFFFFFFFF00FFFFFF 0000000000000000FFFFFF00FFFFFFFFFFFF00FFFFFFFFFFFF 00FFFFFF

Bitmap (BMP) File


Header File 14 byte Header Bitmap 12 s/d 64 byte Informasi Palet 0 s/d 1024 byte Data Bitmap N byte

Header File: menyimpan informasi jenis bitmap file, ukuran file, offset ke data bitmap. Header Bitmap: menyimpan informasi ukuran header dlm byte, lebar dan tinggi citra, planes, dan jumlah bit per piksel. Informasi Palet: informasi palet warna dinyatakan dalam tabel RGB, setiap entri baris berisi kode dan derajat keabuan dari red (R), green (G), blue (B).

Run-Length Encoding
Run-length encoding (RLE) merupakan bentuk file kompresi untuk data citra dijital yang sederhana. RLE disusun berdasarkan susunan dan jumlah data yang sama secara berurutan. Contoh: W = putih ; B = hitam
WWWBWWWWWWBWWWWWWBWW WBBBBBBBWWWBWWWWWWBWWW WWWBWWW 3W 1B 6W 1B 6W 1B 3W 7B 3W 1B 6W 1B 6W 1B 3W

Pewarnaan
Pada dasarnya pewarnaan pada citra menggunakan sistem RGB (red, green, dan blue). Pada file, ada dua sistem pewarnaan, yaitu: sistem palet warna Menggunakan kode untuk merepresentasikan RGB, dalam file biasanya ada tabel warna (berisi: kode, red, green, blue). layer warna Setiap warna memiliki satu layer warna, jadi satu image akan memiliki 3 layer, masing-masing untuk layer red, green, dan blue.

Visualisasi Citra di Layar


Cutaway rendering of a color CRT: 1. Electron guns 2. Electron beams 3. Focusing coils 4. Deflection coils 5. Anode connection 6. Mask for separating beams for red, green, and blue part of displayed image 7. Phosphor layer with red, green, and blue zones 8. Close-up of the phosphor-coated inner side of the screen

Contoh Tabel Palet pd File

Adaptive 8 bit color palette

Contoh Layer Warna

Anda mungkin juga menyukai