Friday 19 October 2018

Menggunakan Effect Blur pada Camera menggunakan OpenCV C++

Hallo bertemu lagi dengan saya Muhammad Rizal Firmanda dari PENS Computer Engginering,
seperti biasa disini saya akan melakukan sharing tentang hal yang saya pelajari sekarang yaitu tentang Komputer Visi atau dikenal dengan Computer Vision. Ternyata mempelajari Komputer visi ini sangat menyenangkan loh !. Yang biasanya saya bermain-main dengan photoshop untuk mengedit suatu gambar, namun disini kita mencoba mempelajari apa yang ada didalam photoshop tersebut dengan cara "mengcoding" gambarnya. keren kaan !
Nahh! disini saya menggunakan Library dari openCV untuk menjalankan praktik dari Komputer Visi ini.
 
Kalau masih belum tau atau masih bingung dan ingin mempelajari tentang Komputer Visi dan Library OpenCV mungkin kamu bisa membaca-baca dahulu di mbah google tentang apa itu komputer visi dan untuk library openCV bisa diakses di halaman ini
Logo OpenCV
Logo Visual Studio

nah dalam percobaan ini, disini saya menggunakan aplikasi 
  • VISUAL STUDIO 2013
mungkin kalian juga bisa menggunakan visual studio tahun yang lainya
  • Library OpenCV 
disini saya menggunakan library OpenCV 3.1.0 . Untuk versi lainya bisa dicek disini


Perlu diketahui untuk mengkonfigurasi Visual Studio dengan Library OpenCV, diperlukan langkah langkah khusus agar OpenCV dapat diakses dan dijalankan pada Visual Studio. 
untuk mengkonfigurasinya akan saya jelaskan pada Post berikutnya yaa !


oke langsung saja menuju langkah-langkahnya untuk mengaktifkan kamera dan memberi effect blur

1. buka visual studio dan klik new Project -> pilih Visual C++ -> Win32 Console Application
2. kemudian akan muncul jendela baru, maka isi code program untuk mengaktifkan camera webcam sebagai berikut


#include "stdafx.h"
#include <opencv2\opencv.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace std;
using namespace cv;
using namespace cv;
int _tmain(int argc, _TCHAR* argv[])
{
    VideoCapture cap(0); // open the default camera
    if (!cap.isOpened()) // check if we succeeded
        return -1;
    Mat edges0, edges; //variable output camera
    namedWindow("edges", 1);
    for (;;)
    {
        Mat frame; //variable yang menyimpan input camera
        cap >> frame; // get a new frame from camera

        resize(frame, frame, Size(400, 300)); //melakukan resize window
        imshow("edges", frame); //menampilkan window camera

        if (waitKey(1) >= 0) break;
    }
    //  the  camera  will  be  deinitialized  automatically  in VideoCapture destructor
        return 0;
}


nah setelah berhasil maka akan muncul window 'edge' yang akan mengaktifkan webcam camera dari laptop.


3. Kemudian untuk menambahkan fungsi blur maka digunakan instruksi sebagai berikut

blur(frame, edges1, Size(100, 100));

pada instruksi blur terdapat beberapa parameter yang digunakan yaitu:
frame : merupakan variable input yang digunakan 
edges1 : merupakan variable output camera setelah dilakukan proses
Size : merupakan besar kernel gambar yang akan diblur, semakin besar kernel size maka semakin blur gambar yang dihasilkan

pada instruksi diatas digunakan kernel size sebesar 100,100. kemudian dilakukan ditampilkan pada window baru dengan menggunakan instruksi berikut

imshow("blur",edges1); // variable edges1 merupakan variable output yang telah diproses dengan fungsi blur

jika dilihat pada keseluruhan code program adalah sebagai berikut

#include "stdafx.h"
#include <opencv2\opencv.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace std;
using namespace cv;
using namespace cv;
int _tmain(int argc, _TCHAR* argv[])
{
    VideoCapture cap(0); // open the default camera
    if (!cap.isOpened()) // check if we succeeded
        return -1;
    Mat edges0, edges, edges1;
    namedWindow("edges", 1);
    for (;;)
    {
        Mat frame;
        cap >> frame; // get a new frame from camera
        resize(frame, frame, Size(400, 300));

        blur(frame, edges1, Size(100, 100));
        imshow("edges", frame);

        imshow("blur", edges1);

        if (waitKey(1) >= 0) break;
    }
    //  the  camera  will  be  deinitialized  automatically  in VideoCapture destructor
        return 0;
}

hasilnya adalah sebagai berikut





yaaaa mungkin seperti itu hasil dari fungsi blur pada opencv c++ yang diaktifkan melalui camera. mungkin banyak fungsi lain lagi dari opencv yang dapat dicoba. beberapa fungsi fungsi keren dapat dicoba menggunakan opencv. so, menyenangkan sekali belajar opencv ini ya kann ?

mungkin sekian dari percobaan yang saya lakukan, semoga bermanfaat ditunggu percobaan-percobaan lainya. salam semangatt !


berikut adalah hasil video percobaan blur :


eepis'16



1 comment:

  1. Top 9 merit casino slot games - ChoegoCasino
    Best merit casino slot games · 1. Wild West Gold Deluxe · 2. Slotomania Gold Deluxe · 3. Slotomania 더킹카지노 Gold vua nhà cái Deluxe 메리트카지노 · 4.

    ReplyDelete