1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo homework môn Thị giác máy

58 172 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 58
Dung lượng 3,89 MB

Nội dung

Báo cáo homework môn Thị giác máy Báo cáo homework môn Thị giác máy Báo cáo homework môn Thị giác máy Báo cáo homework môn Thị giác máy Báo cáo homework môn Thị giác máy Báo cáo homework môn Thị giác máy Báo cáo homework môn Thị giác máy Báo cáo homework môn Thị giác máy

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỀU KHIỂN TỰ ĐỘNG  BÁO CÁO HOMEWORK MÔN: THỊ GIÁC MÁY (EE3077) LỚP: L01 – HK222 GVHD: TS PHẠM VIỆT CƯỜNG SINH VIÊN THỰC HIỆN STT HỌ VÀ TÊN MSSV Trần Gia Bảo 2010914 Dương Đình Minh 2011606 Mai Anh Tuấn 2010753 Nguyễn Trương Gia Huy 2010026 Huỳnh Ngọc Nguyên Thư 2010672 Thành phố Hồ Chí Minh, tháng 04 năm 2023 Thị giác máy TS Phạm Việt Cường MỤC LỤC HOMEWORK 1: 1.1 Point Processing - Power Law 1.2 Image Enhancement Histogram Equalization 1.3 Spatial Domain Filtering 1.4 Morphological Image Processing 1.5 Image Segmentation 20 1.6 Viola - Jones Algorithm 24 HOMEWORK 2: 25 1.1 Viết quy luật chuỗi đạo hàm riêng 𝛛𝐄/𝛛𝐰𝐱 25 1.2 Kiểm tra đạo hàm với số cụ thể: 26 1.3 Kiểm chứng số mô qua công thức đạo hàm 30 HOMEWORK 3: 34 1.1 -dL/dW (the mean vector for batch and mini batch) is the direction of the steepest descent for batch gradient descent but that's not true for stochastic/mini batch gradient descent Why not? 34 1.2 Why is stochastic gradient descent better than batch gradient descent at avoiding local minimu 35 1.3 Why is mini batch gradient descent the best among the three? 38 HOMEWORK 4: 39 1.1 Why local connectivity? 39 1.2 Why shared weights? 40 HOMEWORK 5: 41 1.1 Top Error using Alexnet in Matlab 41 1.2 Top Error using Alexnet in Matlab 45 HOMEWORK 6: 52 1.1 Các bước thực 52 1.2 Kết Training 55 Thị giác máy TS Phạm Việt Cường BẢNG PHÂN CHIA TỈ LỆ CÔNG VIỆC STT Họ tên MSSV Nội dung Phần trăm công việc Trần Gia Bảo 2010914 HW1 20% Dương Đình Minh 2011606 HW2, 20% Mai Anh Tuấn 2010753 HW5, 20% Nguyễn Trương Gia Huy 2010026 HW1 20% Huỳnh Ngọc Nguyên Thư 2010672 HW4 20% Thị giác máy TS Phạm Việt Cường HOMEWORK 1: MACHINE LEARNING 1.1 Point Processing - Power Law Đoạn code: x = imread('C:\chelsea.jpg'); x = rgb2gray(x); x = im2double(x); [m,n] = size(x); gamma = 0.4; c = 1; for i=1:m for j=1:n ex(i,j) = c*(x(i,j)^gamma); end end figure; imshow(x); title('original'); figure; imshow(ex); title('power law'); Kết quả: Thị giác máy 1.2 TS Phạm Việt Cường Image Enhancement Histogram Equalization a) Histogram Đoạn code: clear ix=imread('dark_image.jpg'); imshow(ix); figure h=histogram(ix); figure ix1=imread('bright_image.jpg'); imshow(ix1); figure h=histogram(ix1); figure ix2=imread('high_contrast_image.jpg'); imshow(ix2); figure h=histogram(ix2); figure ix3=imread('low_contrast_image.jpg'); imshow(ix3); figure h=histogram(ix3); figure Thị giác máy TS Phạm Việt Cường Kết quả: Dark Image Histogram Bright Image Histogram High Contrast Image Histogram Thị giác máy TS Phạm Việt Cường Low Contrast Image Histogram Nhận xét: − Dark image: histogram bị lệch phía bên trái − Bright image: histogram bị lệch phía bên tay phải − High contrast image: sử dụng toàn dãy thông tin, histogram phân bố trải dài − Low contrast image: khơng sử dụng tồn dãy thơng tin, histogram tập trung khoảng nhỏ → Histogram cung cấp mơ tả bên ngồi ảnh cách tổng quát b) Histogram equalization Đoạn code: clear I=imread('dark_image.jpg');%Doc anh J=histeq(I);%Histogram Equalization anh imshow(I); figure imshow(J); figure H1=histogram(I); figure H2=histogram(J); figure Thị giác máy TS Phạm Việt Cường Kết quả: Ảnh gốc Ảnh sau dùng Histogram Equalization Histogram ảnh gốc Histogram ảnh dùng Equalization → Khi dùng Histogram Equalization, ta thu ảnh có histogram phân bố nghĩa ảnh có độ tương phản cao ảnh cũ c) Histogram matching Đoạn code: A = imread('dark_image.jpg'); Ref = imread('concordorthophoto.png'); B = imhistmatch(A,Ref); imshow(A) title('Orginal Image') imshow(Ref) title('Reference Grayscale Image') imshow(B) Thị giác máy TS Phạm Việt Cường title('Histogram Matched') H1=histogram(A); title('Histogram of Orginal Image') H2=histogram(Ref); title('Histogram of Reference Grayscale Image') H3=histogram(B); title('Histogram of Histogram Matched') Kết quả: Orginal Image Histogram x104 Reference Grayscale Image Histogram Thị giác máy TS Phạm Việt Cường x104 Histogram Matched Histogram Nhận xét: Có trường hợp ta biến histogram ảnh cũ thành ảnh có histogram phân bố Khi ta dùng Histogram Matching để biến ảnh cũ thành ảnh có hình dạng Histogram khớp với hình dạng Histogram mà mong muốn 1.3 Spatial Domain Filtering a) Median Filter Đoạn code: I = imread('concordorthophoto.png'); figure, imshow(I) J = imnoise(I,'salt & pepper',0.04);%them nhieu muoi tieu vao anh I K = medfilt2(J); imshow(J); figure imshow(K); figure Kết quả: Ảnh gốc Ảnh thêm nhiễu muối tiêu Thị giác máy TS Phạm Việt Cường HOMEWORK 5: ALEXNET 1.1 Top Error using Alexnet in Matlab Đoạn code: % Create a new figure figure % Specify the folder path containing the images folderPath = '/MATLAB Drive/Alexnet/Bulbul'; % Replace with the actual folder path % Get a list of image files in the folder imageFiles = dir(fullfile(folderPath, '*.jpg')); % Load the AlexNet model net = alexnet; % Loop through each input image for i = 1:numel(imageFiles) % Load the image to be classified img = imread(fullfile(folderPath, imageFiles(i).name)); % Preprocess the image for AlexNet input img = imresize(img, [227, 227]); % Resize the image to 227x227 pixels % Perform classification using AlexNet [predictedLabel, scores] = classify(net, img); % Create a subplot for the current image subplot(4, 5, i) image(img) axis off %title(['Image ', num2str(i)], 'FontSize', 6) % Set the FontSize property to for the title % Display the top predicted class with its probability [topScore, topIndice] = max(scores); topClasses = categorical(net.Layers(end).ClassNames(topIndice)); predictedProbability = topScore; 41 Thị giác máy TS Phạm Việt Cường predictionStr = sprintf('%s\n%.4f', predictedClass, predictedProbability); % Calculate text position textPosX = 0; textPosY = size(img, 1); text(textPosX, textPosY, predictionStr, 'Color', 'black', 'FontSize', 7, 'VerticalAlignment', 'top') end % Adjust the layout of the subplots sgtitle('Bulbul Classification Results') saveas(gcf, 'Bulbul Classification Results.png'); % Replace 'example_figure.png' with the desired file name and file format Kết quả: Daisy Classification Results 42 Thị giác máy TS Phạm Việt Cường Norwegian Elkhound Classification Results TigerShark Classification Results 43 Thị giác máy TS Phạm Việt Cường House Finch Classification Results Bulbul Classification Results 44 Thị giác máy 1.2 TS Phạm Việt Cường Top Error using Alexnet in Matlab Đoạn code: % Create a new figure figure % Specify the folder path containing the images folderPath = '/MATLAB Drive/Alexnet/Daisy'; % Replace with the actual folder path % Get a list of image files in the folder imageFiles = dir(fullfile(folderPath, '*.jpg')); % Load the AlexNet model net = alexnet; % Loop through each input image for i = 1:numel(imageFiles) % Load the image to be classified img = imread(fullfile(folderPath, imageFiles(i).name)); % Preprocess the image for AlexNet input img = imresize(img, [227, 227]); % Resize the image to 227x227 pixels % Perform classification using AlexNet [predictedLabel, scores] = classify(net, img); % Get the top predicted classes and their probabilities [topScores, topIndices] = sort(scores, 'descend'); topClasses = categorical(net.Layers(end).ClassNames(topIndices(1:5))); result = (i-1) / 5; % Get integer part value of division integerPart = floor(result); % Create a subplot for the current image 45 Thị giác máy TS Phạm Việt Cường subplot(8, 5, i+integerPart*5) image(img) axis off % Display the top predicted classes with their probabilities predictionStr = ' '; for j = 1:numel(topClasses) predictedClass = char(topClasses(j)); predictedProbability = topScores(j); predictionStr = [predictionStr, sprintf('\n%s: %.4f', predictedClass, predictedProbability)]; end % Calculate text position textPosX = 0; textPosY = size(img, 1); text(textPosX, textPosY, predictionStr, 'Color', 'black', 'FontSize', 4, 'VerticalAlignment', 'top') end % Adjust the layout of the subplots sgtitle('Top Predicted Classes') saveas(gcf, 'Daisy Top-5 Classification Results.png'); % Replace 'example_figure.png' with the desired file name and file forma 46 Thị giác máy TS Phạm Việt Cường Kết quả: Daisy Classification Results 47 Thị giác máy TS Phạm Việt Cường Norwegian Elkhound Classification Results 48 Thị giác máy TS Phạm Việt Cường TigerShark Classification Results 49 Thị giác máy TS Phạm Việt Cường House Finch Classification Results 50 Thị giác máy TS Phạm Việt Cường Bulbul Classification Results  Top error rate = 30% Top error rate = 13% 51 Thị giác máy TS Phạm Việt Cường HOMEWORK 6: ALEXNET TRANFER LEARNING 1.1 Các bước thực − Tạo ImageDatastore in workspace để input hình ảnh dùng cho training Đoạn code: % Define the path to the folder containing your image data image_folder = '/MATLAB Drive/Tranfer Learning'; % Create ImageDatastore imds = imageDatastore(image_folder, 'IncludeSubfolders', true, 'LabelSource', 'foldernames'); − Chọn Apps từ Menu → Deep Network Designer → Alexnet (Sau chọn Alexnet) − Kéo hàm fullyConnectedLayer từ Layer library để thay hàm FC6, FC7, FC8 có sẵn alexnet: + Ở FC6_NEW, FC7_NEW: thiết lập OuptSize = 4096, InputSize: auto, để input hình mà khơng cần resize output theo size alexnet + Ở FC8_NEW: thiết lập OutputSize = 5, output cho classes 52 Thị giác máy TS Phạm Việt Cường − Thay hàm classoutput từ Layer library: để classes ngõ set auto (hàm output cũ 1000 classes alexnet) 53 Thị giác máy TS Phạm Việt Cường − Sang tab Data để Import data: Có thể tùy chỉnh thông số AUGMENTATION OPTIONS chia source ảnh thành training validation − Sang tab Training: chọn Training Options để thiết lập thông số dùng cho Training 54 Thị giác máy TS Phạm Việt Cường − Có thể tùy chỉnh parameter weight bias FC6_NEW, FC7_NEW, FC8_NEW để phù hợp với mô hình − Sau thiết lập xong chọn Train để bắt đầu training 1.2 Kết Training 55

Ngày đăng: 09/08/2023, 18:48

TỪ KHÓA LIÊN QUAN

w