Akuisisi citra digital menggunakan webcam
Matlab (Matrix Laboratory) merupakan salah satu perangkat lunak yang mendukung bidang pengolahan citra digital. Dalam bidang tersebut pada umumnya diawali dengan proses akuisisi citra digital.
Proses akuisisi citra digital dilakukan dengan cara menangkap (capture) atau memindai (scan) citra analog kemudian mengkonversinya menjadi citra digital agar dapat disimpan dan juga diolah melalui komputer.
Salah satu alat akuisisi citra digital yang sering digunakan adalah webcam.
Dalam software Matlab, proses akuisisi citra digital menggunakan webcam dapat dilakukan dengan terlebih dahulu menginstal driver Image Acquisition Support Packages for Hardware Adaptors.
Ada cukup banyak driver yang perlu diinstal yaitu sebagai berikut:
Adaptor Name | Support package name in list | Contents |
Windows Video (winvideo) | OS Generic Video Interface | MATLAB files to use Windows Video, Macintosh Video, or Linux Video cameras with the toolbox. The correct OS files will be installed, depending on your system. |
Kinect for Windows (kinect) | Kinect for Windows Sensor | MATLAB files to use Kinect for Windows cameras with the toolbox
Third party files β Kinect for Windows Runtime |
QImaging (qimaging) | QImaging Hardware | MATLAB files to use QImaging cameras with the toolbox
Third party files β QImaging QCam |
DALSA IFC (dalsaifc) | Teledyne DALSA IFC Hardware | MATLAB files to use DALSA IFC cameras with the toolbox |
DALSA Sapera (dalsasapera) | Teledyne DALSA Sapera Hardware | MATLAB files to use DALSA Sapera cameras with the toolbox |
GigE Vision (gige) | GigE Vision Hardware | MATLAB files to use GigE Vision cameras with the toolbox |
Matrox (matrox) | Matrox Hardware | MATLAB files to use Matrox cameras with the toolbox |
DCAM (dcam) | DCAM Hardware | MATLAB files to use DCAM cameras with the toolbox
Third party files β CMU DCAM on Windows driver file |
GenICam GenTL (gentl) | GenICam Interface | MATLAB files to use GenTL cameras with the toolbox |
Point Grey (pointgrey) | Point Grey Hardware | MATLAB files to use Point Grey cameras with the toolbox
Third party files β Point Grey FlyCapture |
Linux Video (linuxvideo) | OS Generic Video Interface | MATLAB files to use Windows Video, Macintosh Video, or Linux Video cameras with the toolbox. The correct OS files will be installed, depending on your system. |
Macintosh Video (macvideo) | OS Generic Video Interface | MATLAB files to use Windows Video, Macintosh Video, or Linux Video cameras with the toolbox. The correct OS files will be installed, depending on your system. |
Data Translation (dt) | Data Translation Frame Grabbers | MATLAB files to use Data Translation hardware with the toolbox |
Hamamatsu (hamamatsu) | Hamamatsu Hardware | MATLAB files to use Hamamatsu cameras with the toolbox |
National Instruments (ni) | NI Frame Grabbers | MATLAB files to use NI hardware with the toolbox
Third party files β NI-IMAQ files |
Langkah-langkah untuk menginstal driver-driver tersebut adalah:
1. Klik tool ‘Add-Ons’ pada home tool, kemudian pilih ‘Get Hardware Support Packages’
2. Pilih install from internet, lalu pilih next
3. Pilih support packages yang ingin diinstal sesuai dengan tabel tersebut di atas, misalnya ‘DCAM Hardware’, kemudian pilih next
4. Log in dengan akun mathworks (bagi yang sudah punya akun). Jika belum mempunyai akun, sign up lah terlebih dahulu pada laman berikut https://www.mathworks.com/mwaccount/register?uri=/accesslogin/myAccount.do
5. Setelah log in, beri centang padaΒ ‘I accept’, kemudian pilih next
6. Pilih next
7. Lalu pilih install
8. Install juga driver Image Acquisition Support Packages for Hardware Adaptors yang lain sesuai dengan tabel di atas.
9. Setelah semua driver-driver tersebut berhasil diinstal, maka Software Matlab telah support untuk melakukan akuisisi citra. Persiapkanlah webcam yang akan digunakan, bisa menggunakan usb webcam atau bisa juga menggunakan webcam laptop.
10. Berikut ini merupakan contoh pemrograman GUI Matlab untuk mengakuisisi citra digital menggunakan webcam:
a. Tampilan GUI awal
b. Konfigurasi kamera, untuk webcam pilih winvideo
c.Pilih device id 1 untuk webcam laptop, pilih device id 2 untuk usb webcam
d. Pilih resolusi kamera yang diinginkan
e. Klik capture untuk menangkap sekaligus menyimpan citra hasil akuisisi
f. Citra hasil akuisisi secara otomatis akan tersimpan dalam komputer
File source code lengkap untuk akuisisi citra digital dapat diperoleh melalui halaman berikut ini: Source Code
Sedangkan tampilan source codenya adalah:
% Adi Pamungkas, S.Si, M.Si % Website: https://pemrogramanmatlab.com/ % Email : pemrogramanmatlab@gmail.com function varargout = Camera(varargin) % CAMERA MATLAB code for Camera.fig % CAMERA, by itself, creates a new CAMERA or raises the existing % singleton*. % % H = CAMERA returns the handle to a new CAMERA or the handle to % the existing singleton*. % % CAMERA('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in CAMERA.M with the given input arguments. % % CAMERA('Property','Value',...) creates a new CAMERA or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before Camera_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to Camera_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help Camera % Last Modified by GUIDE v2.5 04-Apr-2016 13:44:04 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Camera_OpeningFcn, ... 'gui_OutputFcn', @Camera_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before Camera is made visible. function Camera_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to Camera (see VARARGIN) % Choose default command line output for Camera handles.output = hObject; % Update handles structure guidata(hObject, handles); movegui(hObject,'center'); % UIWAIT makes Camera wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = Camera_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) IAHI = imaqhwinfo; IA = (IAHI.InstalledAdaptors); D = menu('Select Video Input Device:',IA); if isempty(IA)||D==0 msgbox({'You don''t have any VideoInput Installed Adaptors!',... 'Please! try again and select Adaptor properly.'}) return end IA = char(IA); IA = IA(D,:); IA(IA==' ')=[]; x = imaqhwinfo(IA); try DeviceID = menu('Select Device ID',x.DeviceIDs); F = x.DeviceInfo(DeviceID).SupportedFormats; nF = menu('Select FORMAT',F); Format = F{nF}; catch warndlg({'Try Another Device or ID ';... 'You Don''t Have Installed This Device (VideoInputDevice)'}) return end VidObj = videoinput(IA, DeviceID, Format); handles.VidObj = VidObj; vidRes = get(handles.VidObj, 'VideoResolution'); nBands = get(handles.VidObj, 'NumberOfBands'); axes(handles.axes1) hImage = image( zeros(vidRes(2), vidRes(1), nBands) ); preview(handles.VidObj, hImage) set(VidObj,'returnedcolorspace','rgb'); guidata(hObject, handles); % --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) try VidObj = handles.VidObj; i = getsnapshot(VidObj); n = str2double(get(handles.edit1,'String'))+1; set(handles.edit1,'String',num2str(n)); axes(handles.axes2) imshow(i); imwrite(i,strcat(['Image ',num2str(n),'.jpg'])) catch end % --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) try delete(handles.VidObj) catch end axes(handles.axes1) cla reset set(gca,'XTick',[]) set(gca,'YTick',[]) axes(handles.axes2) cla reset set(gca,'XTick',[]) set(gca,'YTick',[]) set(handles.edit1,'String',0) % --- Executes on button press in pushbutton4. function pushbutton4_Callback(hObject, eventdata, handles) % hObject handle to pushbutton4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close; function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double % --- Executes during object creation, after setting all properties. function edit1_CreateFcn(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
Posted on April 4, 2016, in Pengenalan Matlab, Pengolahan Citra and tagged akuisisi citra digital menggunakan matlab, aplikasi pengolahan citra digital menggunakan matlab, cara akuisisi citra digital menggunakan kamera matlab, cara akuisisi citra digital menggunakan matlab, cara instal driver matlab, cara membuat aplikasi capture foto pada matlab, cara membuat gui matlab, cara membuat program capture citra matlab, cara menampilkan kamera pada matlab, cara menggunakan webcam pada matlab, cara menghubungkan kamera dengan matlab, cara menghubungkan kamera webcam dengan matlab, cara snapshot citra matlab, contoh aplikasi pengolahan citra digital menggunakan matlab, driver Image Acquisition Support Packages for Hardware Adaptors, konfigurasi kamera dengan matlab, menghubungkan kamera dengan matlab, menguhubungkan webcam dengan matlab, menyimpan citra hasil akuisisi dengan matlab, Pengolahan Citra Digital, pengolahan citra digital menggunakan matlab, tutorial menghubungkan kamera dengan matlab. Bookmark the permalink. 58 Comments.
Cara menentukan lokasi direktori untuk penyimpanan fotonya bagaimana ya ? Soalnya saya ga menemukan foto yg telah dicapture. Thx
pada kode tsb, lokasi direktori foto sama dengan lokasi direktori di mana kode tsb berada
matlab yang digunakan crack atau asli ?, semisal crack, apakah bisa ?
kalo kasusnya gini codenya gimana bang. misal saya menggunakan usb webcam terus ada warna kuning nah ketika saya mengarahkan usb webcam di gui menginformasikan bahwa warna terdeteksi, apabila saya halangi tidak terdeteksi. Mohon bantuannya bang hehe
hal tersebut bisa dilakukan dg cara mengintegrasikan materi pada halaman berikut
https://pemrogramanmatlab.com/2016/04/04/akuisisi-citra-digital-menggunakan-webcam/
https://pemrogramanmatlab.com/2016/07/02/pengolahan-citra-digital-untuk-mendeteksi-warna-dan-bentuk-obyek/
dan
https://pemrogramanmatlab.com/2016/12/18/pengolahan-video-untuk-mendeteksi-warna/
mas mau tanya, source code untuk menambahkan deteksi wajah pada tampilan Camera gimana yaa?? terus source code diletakkan dimna?? makasih..
mas mau tanya, source code untuk menambahkan deteksi wajah pada tampilan Camera gimana yaa?? terus source code diletakkan dimna?? makasih..
bisa mengintegrasikan materi pada halaman berikut https://pemrogramanmatlab.com/2013/11/05/deteksi-wajah-face-detection-menggunakan-algoritma-viola-jones/
dan
https://pemrogramanmatlab.com/2016/04/04/akuisisi-citra-digital-menggunakan-webcam/
oke makasih mas π
Malam bang adi.
Bang mau tanya bang,
Kalau menggunakan Webcam external, apakah ada tambahan Driver lain dari Driver-driver yang abang adi sebuti seperti di atas ?
Resolusi webcam saya, kurang baik untuk mengcapture gambar.
Driver tsb dibutuhkan utk akuisisi citra baik menggunakan webcam internal maupun eksternal
Jika webcam internal bisa digunakan (driver sdh terinstal), maka webcam eksternal pun juga bisa digunakan
Terima kasih banyak mas buat info nya.
Oke abed sama sama
untuk matlab yang crak apa bisa gan ?
Bisa rudhi
Mas adi, untuk menghubungkan matlab dengan kamera handphone, apakah ada device yang dibutuhkan,
soalnya, kamera laptop saya Resolusinya kurang memadai untuk capture.
Mohon pencerahannya mas.
terima kasih mas.
Untuk menghubungkan kamera smartphone berbasis android pada matlab dapat dilihat pada halaman berikut ini
https://www.mathworks.com/matlabcentral/answers/12036-how-do-i-use-my-smart-phone-camera-as-a-webcam-in-matlab
Terima kasih mas adi.
Coba saya cek TKP.
Sama sama abed
Mas dipilihan support package installer saya tidak menemukan DCAM Hardware kenapa ya mas?
Bisa dicari lagi satrio
yang lainnya juga tidak ada
sepertinya memang matlab saya yang tidak support mas
” function varargout = Camera(varargin)
β
Error: Function definitions are not permitted in this context.”
Kalo ada peringatan seperti itu kenapa ya mas kira2?
mas apa semua Image Acquisition Support Packages for Hardware Adaptors pada tabel diatas harus di install atau bisa 1 saja? terima kasih
untuk mengintegrasikan kamera dengan software matlab, dapat dilakukan jika hanya menginstal beberapa driver yang diperlukan saja, jadi tidak perlu semua driver yang diinstal
mas adi, ijin bertanya mas,.
kira – kira caranya gimana kalau inputan file yang mau dicapture tidak bersumber dari kamera tapi langsung ambil file video yang sudah kesimpen di hardisk, kemudian setelah button capturing bakal mencari mencari semua wajah yang ada di video kemudian menyimpannya semua dalam satu folder
cara untuk membaca dan menampilkan video pada matlab dapat dilihat pada halaman berikut ini
https://pemrogramanmatlab.com/2016/06/20/cara-menampilkan-video-pada-gui-matlab/
mas kalo tutorial buat axes di webcam pake matlab ada ga?
pada materi di atas, tampilan akuisisi citra menggunakan webcam ditampilkan pada axes
mas kok di punya saya gak instalable ya jadinya gak bisa diinstal itu supportnya
Bisa disesuaikan terlebih dahulu software matlabnya
mas kok pakai kamera eksternal (mirrorless) tidak bisa ya? saya sudah install software DCAM di matlab, terus ada pesan you dont have installed this device (videoinputdevice)? ada yang harus saya install lagi? makasih mas
materi di atas adalah cara akuisisi citra pada matlab menggunakan webcam
pak saya mau tanya kalau ditambah buat deteksi pada tangan itu gimana ya? cara buat kotakkan deteksinya? terima kasih
Deteksi tangan bisa menggunakan segmentasi warna kulit
Hasil deteksi kemudian ditampilkan dalam bentuk bounding box
mas, kalau akuisisi citra menggunakan 2 webcam bisa nggak? caranya gimana?
bisa dilakukan, disesuaikan saja nama ID webcamnya
mas, ada source code counting face viola jones in vidio pada matlab tidak?
materi mengenai viola jones ada pada halaman berikut ini
https://pemrogramanmatlab.com/2018/05/31/ekstraksi-ciri-wajah-menggunakan-algoritma-viola-jones/
Oke, terima kasih gan. Di matlab ane untuk package (Teledyne DALSA IFC Hardware dan Data Translation Frame Grabbers) tidak ada gan, itu ada solusi nya gan atau tidak berpengaruh saat program di run gan ?
Dicoba terlebih dahulu saja utk akuisisi citra
Assaamu’alaikum gan , kalau pesan ini yang muncul, solusinya apa ya gan ?
if isempty(IA)||D==0
msgbox({‘You don”t have any VideoInput Installed Adaptors!’,…
‘Please! try again and select Adaptor properly.’})
return
end
Waalaikumsalam
Bisa dilengkapi terlebih dahulu driver2 yg dibutuhkan utk melakukan akuisisi citra digital menggunakan webcam
Untuk DCAM Hardware sudah terinstall gan
kira2 driver2 yg dibutuhkan utk melakukan akuisisi citra digital menggunakan webcam selain DCAM Hardware apalagi ya gan ?
Driver2 yg dibutuhkan tercantum pada materi di atas
Bisa dicoba utk menginstal satu per satu
Oke, terima kasih gan. Di matlab ane untuk package (Teledyne DALSA IFC Hardware dan Data Translation Frame Grabbers), itu ada solusi nya gan atau tidak berpengaruh saat program di run gan
Bisa diinstal semua driver yg diperlukan agar proses akuisisi citra dapat dilakukan
Oke terima gan
*Terima Kasih gan
Malam pak, mau tanya pak. Ada materi untuk matlab berbasiskan android, sehingga kita bisa membuat GUI kita dijalan di android pak. Mohon saran nya pak
Selamat Malam Riyan
untuk saat ini belum ada materi mengenai hal tersebut
semoga ke depan terdapat materi mengenai matlab berbasiskan android
malam pak, saya mau tanya..support package installer di matlab R2014a saya lengkap, tetapi pada saat akan di pilih support package nya tidak aktif/ tidak mau ke tombol next, mohon solusinya, trims..
Permisi Pak, mau tanya untuk driver yang winvideo kok tidak ada ya di support package installer saya. Matlab saya 2015b.. Kira-kira apabila tidak menginstall itu, tetapi driver yang lain sudah terinstall, bisa tidak ya Pak? Terima kasih sebelumnya Pak
Bisa dicoba terlebih dahulu
pak ini matlab versi berapa ya??
saya coba install add ons nya tidak bisa matlab saya versi 2016b
menampilkan informasi gambar di table yang baru di capture codenya dong min