Project DIY Pocket IR Camera

, , 6 Comments

Selain Raspberry Pi saya juga memiliki hobi fotografi. Dan satu bidang fotografi yang saya inginkan sejak lama (tapi ga kesampean) adalah fotografi inframerah. Mengapa? karena untuk masuk kebidang itu, saya harus menyiapkan investasi yang besar. Bisa berupa membeli kamera DSLR baru lalu bayar jasa untuk dioprek. Atau beli DSLR second yang sudah dioprek. Investasi yang paling murah mungkin dengan menggunakan filter inframerah yang diletakkan didepan lensa, namun aplikasi penggunaannya sangat terbatas.
Setelah mengenal Raspberry Pi lebih dari setahun yang lalu, saya melihat ada banyak project untuk membuat pocket camera. Dan bagi saya itu menarik, dari project ini membuat saya belajar dan sadar ternyata pocket camera yang biasa kita operasikan juga memiliki software dan program. Selain bagian optik yaitu lensa, kamera kita juga memiliki chip komputer yang bertanggungjawab untuk seluruh mekanisme software. Oleh karena itu, saat kita menekan tombol shutter, kamera langsung sigap mengambil gambar. Saat gambar diambil, maka ada seragkaian proses untuk mengolah sinyal digital dari sensor untuk menjadi sebuah file image. Tanpa bagian software, tidak mungkin bagian optic kamera dapat difungsikan. Semakin canggih DSLR, kemampuan komputasinya juga semakin cepat.

Bahan dan Modal

Dengan analogi itu, maka kita bisa merakit kamera sendiri karena Raspberry Pi sejatinya adalah sebuah komputer. Dan Raspberry Pi memiliki modul kamera disebut Pi Camera. Modul ini terdiri dari bagian optik, yaitu lensa, sensor dan interface yang dapat dihubungkan dengan kabel fleksibel di main board Raspberry Pi.
Inside Pocket IR
Project ini tidak dikerjakan dalam seharian penuh, melainkan dicicil beberapa jam dalam sehari. Untuk merakit kamera ini saya menggunakan Raspberry Pi 3, micro sd card 16GB speed 48Mbps, Pi Camera NOIR versi 2, layar LCD 3.5 inch, 4 tactile switch, 1 prototyping board, 5 male header pin, dan 5 kabel jumper female-female. Untuk asesories, saya menambahkan casing acrylic dan camera mount. Jika ditotal item per item, maka harga keseluruhan bernilai 1 juta rupiah. Harga komponen termahal adalah Raspberry Pi 3. Jika sudah pernah memiliki Raspberry Pi 3 dan micro sd card, maka kita cuman butuh tambahan modal 400-500 ribu saja.

Tentang Pi Camera

Secara default Pi Camera tidak diaktifkan di Raspberry Pi. Oleh karenanya ada beberapa tahapan untuk setup. Klik link ini untuk melihat tulisan saya sebelumnya (Getting Started with Pi Camera) untuk mensetup Pi Camera hingga ready untuk digunakan.
Tujuan saya dengan menggunakan Pi Camera mount adalah kemudahan untuk melakukan ‘ganti lensa’. JIka ingin mode kamera normal, pasang modul kamera normal. Dan jika ingin mode IR, pasang module NOIR. Mirip dengan behavior/kebiasaan orang ganti lensa di DSLR.
Camera Mount untuk ganti optik antara Normal dan NOIR

Tentang LCD

Project ini bisa dijalankan tanpa menggunakan LCD 3.5 inch. Penggunaan LCD ini sebenarnya sebagai view finder, melakukan preview hasil jepretan atau alat visual saat mengakses menu. Kamera tanpa view finder saya rasa akan sulit untuk digunakan. Untuk menginstall driver LCD, pastikan instalasi Raspbiannya dari image, bukan dari NOOBS karena file system extension yang dilakukan oleh NOOBS tidak disupport oleh driver LCD. Untuk menginstall LCD, silahkan melihat tutorial yang saya tulis disini (Raspberry Pi + LCD 3.5 inch)
LCD 3.5 Inch
Saya menggunakan LCD 3.5 inch, sepertinya versi pirated dari Waveshare Spotpear 3.5 inch. Sehingga SPI interfacenya bukan termasuk yang highspeed. Secara default, speednya hanya 16Mhz. Jika ditinggikan sampai 40MHz, maka warna akan amburadul. Speed tertinggi yang bisa dicapai adalah 30 MHz. Jadi tampilan live dari LCD menjadi terpatah-patah. Untuk mengurangi efek patah-patah ini, saya bermain di resolusi dari foto dan video yang akan direkam. Makin tinggi resolusinya, makin butuh speed interface yang tinggi. Jadi saya turunkan resolusinya untuk bisa kompromi dengan speed displaynya.

Tentang Tombol Fisik

Saya juga menyediakan 4 tombol fisik. Dengan touch screen memang bisa dioperasikan, tapi feel/behavior penggunaan dari kamera tidak ada. Oleh karena itu saya lebih suka mengoperasikan kamera dengan cara tradisional, yaitu melalui tombol. Keempat tombol fisik ini terhubung dengan GPIO pin. Saat tombol ditekan, maka Python akan mengeksekusi satu perintah untuk mengambil gambar atau merekam video, atau memunculkan preview gambar saja (tanpa merekam), atau mengakses menu.
Fungsi yang sudah didevelop dengan Python 2.7 di kamera ini antara lain:
1. Preview
2. Photo mode (auto)
3. Video mode
4. Menu (termasuk untuk restart dan shutdown)
Tactile switch sebagai tombol shutter dan video
Shutdown sangat penting karena Raspberry Pi adalah sebuah computer. Jika terlalu sering dimatikan langsung (cabut power), maka lama kelamaan microsd card akan corrupt dan kita akan kehilangan banyak hal yang sudah kita bangun/develop di Raspberry Pi. Oleh karena itu saya berikan menu untuk bisa melakukan proses
shutdown dengan proper. Restart juga perlu untku jaga-jaga apabila kamera Hang.
Fungsi yang akan saya kembangkan lebih lanjut dari kamera ini adalah:
1. Configuration menu (untuk pilih format image file dan resolusi image/file video)
2. Time-lapse
3. Self timer, pilihan 5 dan 10 detik
4. Slow Shutter, pilihan sampai 10 detik.
5. GUI interface
Untuk menjalankan python script yang dibuat pada saat boot silahkan melihat tutorial yang saya tulis di (Eksekusi python script saat Raspberry Pi Boot)

Tentang Image Quality

Saat mode photo diaktifkan, maka format gambar yang saya gunakan adalah PNG. Mengapa tidak JPG? hal ini karena saya menyukai hasil gambar yang lebih bagus. Kompresi JPG membuat gambar tidak begitu bagus saat 100% crop. Kelebihan dengan JPG adalah file yang kecil sehingga dapat menampung banyak file image. Kedua proses capturing dan saving juga berlangsung cepat. Kelemahan PNG adalah sebaliknya. Tapi karena yang terutama bagi saya adalah picture quality, maka saya menggunakan format PNG. Untuk capture full resolution 8 MP, file JPG sebesar 2 MB sedangkan PNG sebesar 12 MB. PNG menggunakan looseless compression. Saya menggunakan dua resolusi. Pada saat preview saya menggunakan resolusi 480×320, dan pada saat perintah capture dijalankan maka saya beralih ke full resolusi (3280×2464) dengan aspect ratio 4:3

Tentang Video Quality

Untuk merekam video, saya menggunakan resolusi yang rendah yaitu 640×480, kualitas VGA. Hal ini saya pilih karena harus berkompromi dengan kualitas LCD yang saya pakai. Kedua, file yang rendah juga menghemat banyak space. Untuk video sepanjang 2 menit, ukuran file sudah mencapai 25 MB. File format yang disupport oleh Pi Camera adalah .h264. Format file ini bisa dimainkan di sebagian besar media player. Untuk dimainkan di HP, perlu install VLC.

Tentang File Transfer

Untuk urusan mendownload/mengcopy foto ke device lain misalnya HP. Awalnya saya menggunakan USB sebagai media penyimpanan. Namun itu sudah saya tinggalkan. Sekarang saya sudah menginstall webserver di Raspberry Pi sehingga saya bisa mengakses foto atau video yang tersimpan di Raspberry dari HP saya dan bisa langsung didownload. Ini mirip dengan teknologi yang digunakan oleh kamera action saat ini. Untuk membuat webservernya, silahkan mengakses tutorial yang saya tulis (Webserver Photo Raspberry Pi).
Kamera ini juga memiliki feature local network. Artinya, kamera ini memiliki wifi access point sendiri sehingga kita bisa langsung tersambung ke kamera tanpa perlu adanya wifi network lain. Hal ini memudahkan saya untuk mendownload foto-foto langsung, tanpa harus menunggu ada wifi network di rumah atau di hotel. Mirip dengan fungsi wifi direct smart-tv. Untuk membuat feature ini, silahkan mengakses tutorial yang saya tulis (Wifi Direct)
Final build

Gallery

Ini adalah beberapa cuplikan foto Inframerah yang diambil dengan Raspberry Pi
View dari One Pacific Place Jakarta
View Selatan SCBD dari One Pacific Place
Rumah Kosong
Citiwalk Lippo Cikarang
Jalan tol dalam kota Jakarta
Big tree
Rumah Heli
Curug Cigamea
Downstream
Citilink
Terminal Halim Perdana Kusumah
Stream
Links:
Getting started with Pi Camera

Getting Started with Pi Camera


Webserver Photo

Project: Webserver Foto Raspberry Pi


Wifi Direct

WiFi Direct Raspberry Pi


Raspberry Pi + LCD 3.5 inch

Raspberry Pi + LCD 3.5 inch


Start on boot
http://andidinata.com/2017/03/crontab/

Facebook Comments
 

6 Responses

  1. fani

    September 4, 2017 10:12 am

    Nanya lg dong om,kya’y asik nih project’y hehehe
    Btw os di raspi’y pake apa om? Kn saya punya raspi pake RetroPie,apa bisa langsung bikin project ini om??

    Reply
  2. Hasan Zain

    January 17, 2018 9:30 am

    itu beli kamera nya dimana ya pak yg versi 2?rata2 di toko online 400rban,ada rekomendasi yg murah pak?

    Reply

Leave a Reply