Sunday, April 26, 2015

Mengarsir Daerah yang Dibatasi oleh Busur dan Ruas Garis

Ada butir soal dalam Ujian Nasional 2015 pada SMK Kelompok Teknologi, Kesehatan, dan Pertanian yang menarik perhatian saya. Ketertarikan itu bukan pada tingkat kesulitan soalnya, melainkan pada gambar yang menyertai soal tersebut. Perhatikan gambar di bawah ini.
Untuk membuat gambar tersebut dalam dokumen $\small\LaTeX$, lebih dulu saya menggambarkannya dalam GeoGebra untuk menetapkan koordinat-koordinat titik yang berkaitan. Dalam hal ini, paket utama yang saya gunakan adalah tikz
Saya buat 1 satuan sebagai 1 cm, sehingga dapat saya tetapkan dulu koordinat-koordinatnya.
  1. \coordinate (A) at (0,0) coordinate (B) at (6,0) coordinate (C) at (6,6) coordinate (D) at (0,6) coordinate (E) at (3,0) coordinate (F) at (6,3) coordinate (G) at (3,6) coordinate (H) at (0,3) coordinate (O) at (3,3) coordinate (P) at (3.88,2.12) coordinate (Q) at (3.88,3.88) coordinate (R) at (2.12,3.88) coordinate (S) at (2.12,2.12);
Kemudian saya menggambar perseginya.
  1. \draw[thick] (A)--(B)--(C)--(D)--cycle;
Untuk menandai ruas-ruas garis yang sama panjang, saya muat paket tkz-euclide dalam preamble.
  1. \usepackage{tkz-euclide}
  2. \usetkzobj{all}
Kemudian memberikan perintah untuk menandainya.
  1. \tkzMarkSegments[mark=|,size=3pt,color=gray](A,E E,B B,F F,C C,G G,D D,H H,A)
Berikutnya saya menamai beberapa koordinat titik seperti tampak dalam gambar pada soal tersebut.
  1. \node[below] at (A) {$A$} node[below] at (B) {$B$} node[above] at (C) {$C$} node[above] at (D) {$D$} node[below] at (E) {$E$} node[right] at (F) {$F$} node[above] at (G) {$G$} node[left] at (H) {$H$};
Ruas garis $\small\overline{AC}$ dan $\small\overline{BD}$ digambar oleh perintah
  1. \draw[thick] (A)--(C) (B)--(D);
Nah, bagian ini yang agak rumit: menggambar busur.
  1. \draw[thick] (E) arc (0:90:3cm); %busur EH
  2. \draw[thick] (F) arc (90:180:3cm); %busur EF
  3. \draw[thick] (G) arc (0:-90:3cm) ; %busur GH
  4. \draw[thick] (G) arc (-180:-90:3cm); %busur GF
Terakhir, lebih rumit lagi: mengarsir daerah seperti tampak dalam gambar pada soal tersebut. Untuk ini, di dalam preamble saya muat \usetikzlibrary{patterns}.
  1. \path[pattern color=DarkSlateGray,pattern=north west lines,opacity=.5] (R)--(O)--(Q) arc[radius=3,start angle=-135,delta angle=-45]--(G) arc[radius=3,start angle=0,delta angle=-45]-- cycle; %daerah OQGR
  2. \path[pattern color=DarkSlateGray,pattern=north west lines,opacity=.5] (P)--(O)--(S) arc[radius=3,start angle=45,delta angle=-45]--(E) arc[radius=3,start angle=-180,delta angle=-45]-- cycle; %daerah OSEP
Adapun warna pada arsiran saya gunakan dari \usepackage[svgnames]{xcolor}

Nah, jawaban untuk soal ini beserta gambar dari hasil pengkodean di atas saya lampirkan di bawah ini. Dokumen ini saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015




Sunday, April 5, 2015

Optical Character Recognition (OCR) #2

Sebelum ke sini saya harap Anda sudah membaca tulisan pertama. Sekarang saya ajak Anda untuk memanfaatkan teknologi OCR dalam kegiatan tulis-menulis.

Cukup beragam produk software OCR yang ditawarkan, saya memilih yang gratis (open source) saja, yaitu FreeOCR dari Ralph Richardson. FreeOCR yang saya gunakan saat ini adalah versi terbaru, yaitu v5.41 Maret 2015. Untuk mendapatkan software ini, silakan buka halaman resminya sebagaimana ditautkan di atas, kemudian pasang (install) pada komputer Anda dengan mengikuti seluruh petunjuk yang muncul. Ukurannya cukup ringan, hanya 10,79MB. Setelah software ini terpasang, tampilan awal ketika dibuka akan tampak seperti di bawah ini.

Dalam penggunaan yang sederhana, saya memanfaatkannya untuk "mengambil" teks dari dokumen berbentuk gambar (png, jpeg, dsb.) dan PDF. Langkah-langkah dalam penggunaannya:
  • Bila dokumennya berupa gambar, klik menu Open dan bila berbentuk PDF, klik menu Open PDF.
  • Cari file yang dimaksud, kemudian klik Open
  • Klik tanda silang merah untuk membersihkan jendela hasilnya.
  • Klik menu OCR>OCR Current Page atau OCR All Pages dan tunggu beberapa saat hingga hasilnya muncul. 
  • Salin (copy) hasil itu dengan mengklik menu-tengah, kedua dari bawah, dan menempelkannya (paste) ke dalam dokumen yang sedang Anda susun; atau klik menu Word, terbawah, bila Anda ingin langsung membukanya dalam Microsoft Word; atau Anda menyimpan saja teks tersebut.
  • Untuk menu Scan belum bisa saya jelaskan karena saya belum pernah menggunakannya.

Sejauh ini hasil terbaik saya peroleh bila: 
  • dokumen tersebut berupa teks biasa, bukan modus matematika,
  • file yang dibuka oleh OCR berupa potongan (cropped) dari sebagian dokumen asal, untuk pemotongannya saya gunakan FastStone Capture.
Berikut ini contoh file dalam tulisan pertama yang saya buka dalam FreeOCR beserta hasilnya.

Tampak bahwa kita masih harus melakukan penyuntingan terhadap hasilnya, tetapi ini masih mending dibandingkan kita mengetikkan ulang secara manual.
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015

Optical Character Recognition (OCR) #1

Pernahkah Anda menemukan suatu dokumen teks dalam bentuk gambar (image)? Padahal tulisan yang sedang Anda buat merujuk pada dokumen tersebut. Perhatikan contoh berikut ini.
Anda ingin "mengambil" teks dari dokumen gambar di atas. Apa yang Anda lakukan? Mengetikkan ulang teks itu secara manual? Melelahkan, bukan?

Sekarang tidak lagi, karena Anda dapat menggunakan optical character recognition (OCR). OCR adalah pengubah mekanik atau elektronik dari gambar teks yang diketik atau dicetak ke dalam mesin-pengkode teks
Sifat dari teknologi ini adalah untuk menyederhanakan entri dokumen agar dapat diproses lebih lanjut. Tujuannya adalah untuk memiliki versi digital dari dokumen kertas dan menghindari entri karakter secara manual.
Saat ini, perusahaan-perusahaan induk sudah mengintegrasikan teknologi ini ke dalam proses global perusahaannya, dari penagihan (billing) menjadi dokumen arsip.
Gambar di atas menunjukkan proses:
  1. Pemindaian (scan) atau pemotongan (capture) dokumen: suatu pemindai (scanner) atau kamera memotong dokumen kertas tersebut.
  2. Mesin OCR memindahkan (ekstrak) teks dari gambar.
  3. Teks yang telah dikenali itu dikirim untuk diproses.
OCR tidaklah sempurna, karena memiliki keterbatasan atas beberapa faktor yang mengubah kualitas pengenalan/rekognisinya:
  • Resolusi: file beresolusi tinggi memberikan hasil terbaik karena lebih rinci dalam membantu pengenalan
  • Orientasi: Kebanyakan mesin hanya mengenali dokumen dengan teks kiri-ke-kanan secara horisontal.
  • Bahasa, jenis huruf: jenis huruf yang umum berhasil lebih baik. Jenis huruf tulisan tangan dan modus matematika cenderung tidak dikenali dengan baik. Bahasa juga menentukan himpunan karakter yang dapat dikenali, beberapa karakter bersifat khas untuk suatu bahasa.
  • Kualitas gambar: gambar yang tajam dengan pencahayaan yang baik dan kontras yang jelas akan memberikan hasil terbaik. Gambar yang buram akan mengurangi kualitas pengenalan.
Teknologi OCR membandingkan pola-pola yang dikenali pada gambar dengan pola tersebut pada jenis-jenis huruf. Jadi seolah-olah semakin banyak jenis huruf yang dikenali dengan baik saat ini, maka masih ada beberapa jenis huruf atau orientasi teks yang sangat mungkin tidak dikenali.
Rata-rata kinerja pengenalan karakter saat ini adalah sekitar 95%.

Selain penggunaan oleh perusahaan, seperti digitalisasi dokumen untuk arsip, OCR juga digunakan dalam pelayanan publik.
  • Pemindaian kartu identitas dan paspor
  • Pemindaian plat mobil untuk perparkiran
  • Pembaca dokumen untuk penyandang cacat
Sejak tahun 2000 dan melonjaknya pengguna ponsel, teknologi OCR juga merambah perangkat mobile. Kita dapat menemukan OCR dalam banyak aplikasi: Business Card Reader, Document Reader, dan Camera Translator.

Ponsel pintar sekarang berada di saku semua orang, OCR menyederhanakan entri teks. Sekarang Anda dapat memasukkan info kontak langsung ke ponsel Anda hanya dengan mengambil gambar dari kartu kontak (business card). Anda dapat menerjemahkan menu atau tanda-tanda ketika Anda sedang bepergian. Anda dapat memindai dokumen dan mengintegrasikannya ke dalam pengolahan data perusahaan saat Anda bepergian tanpa komputer.

Demikian dulu untuk bagian pertama ini. Tulisan "pengantar" ini merujuk pada dua situs, yaitu Wikipedia dan XMSCAN.
Semoga bermanfaat.

Adjie Gumarang Pujakelana 2015

Friday, April 3, 2015

Keterangan pada Tulisan

Ketika kita menulis kadang kita ingin memberikan keterangan tentang bagian yang kita tulis. Pada gambar di bawah ini, misalnya, saya memberikan keterangan tentang tahap/langkah dalam penyelesaian soal Matematika. 
Bagaimana cara melakukan itu?
Sebagai salah satu pilihan, kita dapat menggunakan paket tikzpagenodes dan paket ragged2e untuk penjajaran teksnya.
\usepackage{ragged2e}
\usepackage{tikzpagenodes}
\usetikzlibrary{calc}
Oleh kedua paket di atas, dalam dokumen, keterangan yang kita tulis akan ditempatkan pada margin kanan dengan menggunakan perintah \tikzmark berikut ini
\newcommand\tikzmark[1]{%
  \tikz[overlay,remember picture,baseline=-0.3ex] \coordinate (#1);}
\newcommand\catat[3][0pt]{%
  {\tikzmark{e}#2
  \begin{tikzpicture}[remember picture, overlay]
  \path let \p1 = (e), \p2 = (current page marginpar area.west) in node[yshift=-#1,text width=\marginparwidth,align=left,anchor=north west,font=\normalfont\small\color{RoyalBlue},inner ysep=0pt] at (\x2,\y1) {\tikzmark{s}\RaggedRight#3};
  \draw[RoyalBlue] let \p1 = (e), \p2 = (s) in (e) |- ([xshift=-5pt,yshift=0.5ex]s.west);
  \end{tikzpicture}%
  }%
}
Adapun lebar tempat keterangan dapat diatur sebagai opsi marginpar dalam paket geometry, demikian pula penyesuaian lebar margin dokumennya. Misalnya
\usepackage[a4paper,marginpar=2cm,lmargin=1.5cm,rmargin=3cm]{geometry}
Lebar tempat keterangan itu masih pula dapat diubah dalam opsi node pada perintah tikzmark di atas.
text width=...\marginparwidth
Penempatan keterangan tersebut tak selalu harus pada margin kanan, seperti yang saya lakukan untuk dokumen pada gambar di atas. Karena saya menggunakannya hanya pada environment align yang saya atur dengan opsi fleqn, maka saya tempatkan keterangannya di tengah baris. Saya mengubahnya dalam koordinat pada perintah \path di atas.
(current page.center)
Berikut ini contoh penggunaannya dalam dokumen. Teks dalam kolom itu saya kutip dari puisi yang saya buat. Dokumen ini saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015



Thursday, April 2, 2015

Rumus Kimia dalam Dr. Bunsen

Saya akan memperkenalkan satu lagi tema BeamerKali ini datang dari Dr. Bunsen. Perhatikan halaman depannya di samping ini, cantik bukan?
Tema Bunsen ini disusun oleh XeLaTeX sehingga kita dapat memuat dan menggunakan jenis huruf yang kita inginkan. Dalam contoh dokumen di bawah ini saya masih menggunakan tema aslinya, termasuk gambar di halaman depan (front page) dan jenis hurufnya.

Meskipun "di luar jalur", Kimia selalu menarik minat saya. Saya gunakan tema ini untuk menyusun terjemahan dari paket mhchem karya Martin Hensel. Ini adalah (salah satu pilihan dalam $\small\LaTeX$) paket untuk menuliskan rumus, molekul, dan penamaan bahan kimia. Tak seluruhnya saya terjemahkan, hanya bagian yang berkaitan dengan teknis penulisannya saja. Dokumentasi paket ini seutuhnya dapat Anda unduh di sini.

Untuk dapat "menikmati" presentasi a la Beamer ini, saya sarankan Anda menggunakan Adobe Reader. Setelah dokumen ini terbuka, pilihlah menu View > Full Screen Mode. Berikut ini dokumennya, yang saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015



Related Posts Plugin for WordPress, Blogger...