Showing posts with label Image Processing. Show all posts
Showing posts with label Image Processing. Show all posts

Wednesday, November 19, 2025

Filter emboss (dari PIL): kenapa bagian yang berwarna gelap tidak di-emboss

Iseng-iseng, saya mencoba menggunakan filter emboss pada ijasah S1 (versi Inggris) saya. Di luar dugaaan, filter embos tidak muncul pada jas yang saya pakai.


Kode yang saya gunakan:
from PIL import Image, ImageFilter
import matplotlib.pyplot as plt

img = Image.open('/mnt/data/ijasah_s1_bta_eng.png')
emboss = img.filter(ImageFilter.EMBOSS)

plt.imshow(emboss)
plt.axis('off')
Hasil: 

filter emboss tidak tampak pada jas




Alasan kenapa emboss tidak muncul:
  • Tinta berwarna (misalnya merah atau biru) dan warna jas memiliki nilai luminance yang hampir sama (fenomena color blending by luminance contrast);
  • Perbedaan kontrasnya sangat kecil (tinta menyerap cahaya secara berbeda, stempel tampak memudar atau bahkan “hilang”);
  • Emboss tidak dapat menonjolkannya;
  • Menunjukkan fenomena optik normal pada stempel di atas area gelap (low optical visibility).


Thursday, December 10, 2015

Particle Tracking: Least square fitting berbasis konvolusi

Ini adalah interpretasi bebas saya atas tutorial MDS di halaman granular material labs-nya. Idenya sederhana: menggunakan least square fitting berbasis konvolusi untuk menge-track pergerakan suatu partikel/image.

Least Square Fitting

Least square fitting adalah teknik kesesuaian atau kecocokan (godness fit) untuk mencari nilai terbaik yang paling mirip antara data observasi dengan data estimasi atau function fit. Jika data observasi dimisalkan dengan $y_i$ dan fungsi estimasi disimbolkan dengan $f(x_i)$ maka "least square fit" adalah jumlahan selisih nilai observasi dengan fitting function,

$$\sum\limits_{i=1}^n \left( {{y_i}-f ({x_i})}^2 \right)$$

Jika jika memiliki data dengan rentang error bar atau variansi, maka chi-square didefinisikan sebagai least square diatas dibagi dengan "error bar"nya, yakni, $\sigma$.

$$ \chi^2=\sum\limits_{i=1}^n \left( \dfrac{{y_i}-f({x_i})}{\sigma} \right)^2 $$

Nilai chi-square (χ2) berkisar antara 0 sampai dengan tak hingga (~), semakin kecil nilai chi-squared maka semakin mirip nilai observasi dengan nilai ekspektasi, dalam hal particle tracking, maka gambar bulatan particle akan semakin tipis sehingga semakin mudah dibedakan antar satu dengan yang lainnya. Pada tutorial kali ini, least square fitting yang digunakan adalah berbasis konvolusi yang akan dijabarkan pada tulisan dibawah.

Fungsi Partikel Ideal

Misalkan partikel yang ingin kita track posisinya memiliki fungsi ideal sebagai berikut, $$I_c(\vec{x})=\sum_{n=1}^{N} I_p(\vec{x}-\vec{x}_n(t);D,...),\;\;\;\;\;\;[1]$$ dengan $N$ adalah jumlah partikel dan $$I_p(\vec{x};D,...)$$ fungsi tersebut menggambarkan bentuk partikel ideal yang berada di tengah. Partikel ideal bergantung pada variabel diameter dan variabel lain yang digunakan dalam teknik pengolahan citra. Untuk demo ini kita menggunakan fungsi partikel ideal sbb,

$$I_p(\vec{x};D,w)= \dfrac{\bigl[1-tanh(\frac{|\vec{x}|-D/2}{w})\bigr]}{2}$$

Sunday, April 28, 2013

XnRetro: Aplikasi Mirip Instagram Gratis untuk PC

XnRetro merupakan aplikasi yang gratis tapi tidak open source yang mirip dengan instagram. Aplikasi ini dapat memenuhi keinginan fans dari Instagram yang tidak menyediakan versi desktop dari Instagram sendiri, hanya untuk iPhone dan Android saja (BB dan Windows Phone...?). Berikut screenshot dari aplikasi XnRetro yang berjalan di Ubuntu 12.04, lebih cantik dan menawan dari yang berjalan di Windows OS dan OSX.

Tampilan XnRetro di Ubuntu OS

Banyak efek yang tersedia di XnRetro ini, dan tidak kalah juga dengan efek-efek yang ditawarkan Instagram. Lebih jauh, XnRetro menawarkan kemudahan dalam penggunaaanya, just plug and play. Untuk gambar atau foto yang sama, juga bisa diaplikasikan beberapa efek sekaligus. Dan hebatnya lagi, pengguna bisa membagi foto hasil editannya di beberapa media sosial seperti Facebook, Twitter, Flickr atau yang lain. Lengkapnya, fitur-fitur yang ditawarkan XnRetro adalah sebagai berikut:
  1. 20 efek pewarnaan
  2. 15 efek pencahayaan
  3. 15 efek Vignette
  4. 28 bingkai frame
  5. Fitur lain seper contrast, gamma, saturation yang bisa diatur.
  6. Berbagi foto dengan aplikasi web seperti Flickr, Picasa, Facebook, Imgur, Tumblr, ImageShack, YFrog, GlowFoto or TwitPic.
Silakan langsung download disini jika anda tertarik mencobanya.

Tuesday, January 24, 2012

Active Thermography and its Application

Thermography or thermal imaging is a type of infrared imaging. Thermal imaging camera sensors detect heat in the infrared range of the electromagnetic spectrum (roughly 900–14,000 nanometers or 0.9–14 µm) and produce color or black and white images from heat signatures. It is widely used in manufacture and industry to do preventive maintenance for the machinery. One of the strengths of the technology is that it is non-contact, meaning inspection can take place even on live systems where there may normally be dangerous temperatures, electrical currents or high speed moving parts. So from a safety point of view it has some real benefits.

Thermography enables systems to be inspected under real operating conditions. So mission critical or high value processes such as manufacturing can continue during the thermal inspection. In high value processes the cost of maintenance can be greatly reduced by predicting when repairs or routine maintenance are needed. This enables maintenance to be planned, which in turn can minimize costly down time. Mechanical wear and tear cannot always be detected until there is a catastrophic failure. For example, if a worn bearing is put under load it gets hot, which can be detected with a thermal imaging camera.

Those two benefits: cost reduction and ease of maintenance make it powerfull tool for preventive maintenance. The following two pictures are example of thermal imaging for detection of mechanical condition and water leak detection in pipe. The high temperature shows the condition of captured device, if it is higher than boundary condition, it can be categorized as abnormal or defect area.

Example of themal imaging [1,2]

Active themography

Friday, January 13, 2012

Image Compression in GNU Octave and Matlab

Suppose you have an image file namely "image.jpg". Due to the file size, you want to compress it to smaller size. In GNU Octave and Matlab, the following simple commands can be used,
image=imread('image.jpg');

imwrite(image,'image_new.jpg','quality',50);
Those commands will compress "image.jpg" to "image_new.jpg" with the quality of compressed image is 50% of the original image.Please note, the current supported image format. when I wrote this article, is .jpg only.