1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING Đề tài: OBJECT DETECTION

35 4 0

Đ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

Tiêu đề Object Detection
Tác giả Lê Xuân Đức, Đồng Nhất Khang
Người hướng dẫn GVHD: Trần Vũ Hoàng
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Tp. Hồ Chí Minh
Chuyên ngành Kỹ Thuật Máy Tính - Viễn Thông
Thể loại Báo Cáo Giữa Kỳ
Năm xuất bản 2020
Thành phố Tp.Hồ Chí Minh
Định dạng
Số trang 35
Dung lượng 3,01 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐIỆN ĐIỆN TỬ BỘ MÔN KỸ THUẬT MÁY TÍNH VIỄN THÔNG BÁO CÁO GIỮA KỲ MÔN MACHINE LEARNING Đề tài OBJECT DETECTION GVHD Trần Vũ Hoàng Sinh viên thực hiện Lê Xuân Đức MSSV 17119071 Đồng Nhất Khang MSSV 17119081 Tp Hồ Chí Minh – 112020 1 Giới thiệu 0 Đề tài Object Detection là quá trình tìm kiếm các cá thể đối tượng trong thế giới thực như ô tô, xe đạp, TV, hoa và con người trong hình ảnh tĩnh hoặc video Nó cho phép nhận dạng,.

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH

KHOA ĐIỆN ĐIỆN TỬ

BỘ MÔN KỸ THUẬT MÁY TÍNH - VIỄN THÔNG



BÁO CÁO GIỮA KỲ

MÔN: MACHINE LEARNING

Đề tài: OBJECT DETECTION

Sinh viên thực hiện : Lê Xuân Đức MSSV: 17119071

Đồng Nhất Khang MSSV: 17119081

Tp.Hồ Chí Minh – 11/2020

Trang 2

1 Giới thiệu

1.1 Đề tài

Object Detection là quá trình tìm kiếm các cá thể đối tượng trong thế giớithực như ô tô, xe đạp, TV, hoa và con người trong hình ảnh tĩnh hoặc video Nócho phép nhận dạng, xác định vị trí và phát hiện nhiều đối tượng trong một hìnhảnh, giúp chúng ta hiểu rõ hơn nhiều về một hình ảnh nói chung Object Detectionthường được sử dụng trong các ứng dụng như truy xuất hình ảnh, bảo mật, giámsát và hệ thống hỗ trợ người lái nâng cao (ADAS)

Đối tượng nhóm lựa chọn: xe ô tô

1.2 Bảng phân chia công việc

Lê Xuân Đức Word, thuyết trình mục 1-5

Đồng Nhất Khang Powerpoint, thuyết trình mục 6-8

2 Lý do chọn đề tài

Ngày nay, xã hội ngày càng phát triển, nhu cầu đi lại ngày càng tăng lên vớinhiều hình thức, phương tiện khác nhau Tình trạng kẹt xe trong giờ cao điểm, tainạn giao thông,… diễn ra khá là phổ biến Để hạn chế những tình trạng như trên,nhóm chúng em lựa chọn đề tài nhận diện xe ô tô nhằm tạo ra được sản phẩm hỗtrợ người dùng giám sát được quá trình lưu thông của các phương tiện, mật độ lưuthông, đếm số xe mà không cần có người theo dõi, đồng thời đưa ra giải pháp phùhợp, cảnh báo cho người điều khiển phương tiện giao thông một số thông tin cầnthiết như khả năng kẹt xe ở khu vực sẽ đi qua, thông tin của xe đi sai làn, sai thờigian quy định,… Và một trong nhưng đối tượng xe đáng được quan tâm là xe ô tô– phương tiện đường bộ có kích thước lớn, được sử dụng phổ biến ở nhiều nơi, cónhiều nguồn dữ liệu hình ảnh

3 Mục tiêu

Nhận biết được chính xác xe ô tô khi đang đứng yên, chuyển động trongcác điều kiện góc nhìn, thời tiết, chất lượng hình ảnh,… khác nhau với độ chínhxác lớn hơn 90%

Đưa ra các thông báo, dự đoán mức độ lưu thông của xe trong giờ caođiểm, các khu vực có nhiều ô tô qua lại

Trang 3

4 Các thách thức

Vật thể bị khuất : do các góc nhìn khác nhau hoặc do số lượng xe lưu thônglớn, các xe ở phía trước che khuất xe ở phía sau Khi đó, hệ thống chỉ nhận đượccác xe ở phía trước, các xe ở phía sau có thể nhận diện sai

Vật thể ở xa, mờ, màu sắc trùng với màu nền: các hình ảnh có thể khôngđược xem xét hay bỏ qua việc nhận diện Trong trường hợp này, hệ thống vẫn hoạtđộng, tuy nhiên các đối tượng không được phát hiện

Vật thể di chuyển quá nhanh: tốc độ di chuyển nhanh trong khi tốc độ xử lýhình ảnh theo dõi không thể đáp ứng được Ví dụ như camera ghi được 30 hìnhảnh/giây nhưng do tốc độ xe quá nhanh dẫn đến hình ảnh tại thời điểm ghi được cóthể bị nhòe, mờ, hình ảnh tại điểm trước đó chưa biến mất thì hình ảnh tại thờiđiểm hiện tại xuất hiện khiến trong cùng 1 khung hình xuất hiện 2 hình ảnh xe củachỉ một chiếc xe Từ đó việc nhận diện có thể khó khăn, gây ra sai lệch

Vật thể di chuyển ngược chiều, sai luật: thông thường ở một số nơi chỉ chophép di chuyển 1 chiều, việc lắp đặt hệ thống giám sát xe theo 1 chiều là hoàn toànhợp lý vì chiều lưu thông đã được định sẵn Tuy nhiên, trong một vài trường hợpvẫn có người điều khiển phương tiện giao thông đi sai luật, đi ngược chiều, sai lànđường,… Do đó, hệ thống có thể nhận diện sai

5 Các phương pháp đề xuất

5.1 Region-based Convolutional Neural Networks (R-CNN)

Hình 1 Region-based Convolutional Neural Networks (R-CNN)

Convolutional một cửa sổ trượt (Sliding Windows) trên một ma trận như mô tảhình dưới:

Trang 4

Hình 2 Sliding Windows

Các convolutional layer có các parameter(kernel) đã được học để tự điều chỉnhlấy ra những thông tin chính xác nhất mà không cần chọn các feature Trong hìnhảnh ví dụ trên, ma trận bên trái là một hình ảnh trắng đen được số hóa Ma trận cókích thước 5×5 và mỗi điểm ảnh có giá trị 1 hoặc 0 là giao điểm của dòng và cột.Convolution hay tích chập là nhân từng phần tử trong ma trận 3x3 SlidingWindow hay còn gọi là kernel, filter hoặc feature detect là một ma trận có kíchthước nhỏ như trong ví dụ trên là 3×3 Kết quả được một ma trận gọi là Convoledfeature được sinh ra từ việc nhận ma trận Sliding Windows với ma trận ảnh 5×5bên trái

Cấu trúc của mạng CNN: Mạng CNN là một tập hợp các lớp Convolutionchồng lên nhau và sử dụng các hàm nonlinear activation như ReLU và tanh đểkích hoạt các trọng số trong các node Mỗi một lớp sau khi thông qua các hàmkích hoạt sẽ tạo ra các thông tin trừu tượng hơn cho các lớp tiếp theo Trong môhình mạng truyền ngược (feedforward neural network) thì mỗi neural đầu vào(input node) cho mỗi neural đầu ra trong các lớp tiếp theo Mô hình này gọi làmạng kết nối đầy đủ (fully connected layer) hay mạng toàn vẹn (affine layer) Còntrong mô hình CNNs thì ngược lại Các layer liên kết được với nhau thông qua cơchế convolution Layer tiếp theo là kết quả convolution từ layer trước đó, nhờ vậy

mà ta có được các kết nối cục bộ Như vậy mỗi neuron ở lớp kế tiếp sinh ra từ kếtquả của filter áp đặt lên một vùng ảnh cục bộ của neuron trước đó Mỗi một lớp

Trang 5

được sử dụng các filter khác nhau thông thường có hàng trăm hàng nghìn filternhư vậy và kết hợp kết quả của chúng lại Ngoài ra có một số layer khác nhưpooling/subsampling layer dùng để chắt lọc lại các thông tin hữu ích hơn (loại bỏcác thông tin nhiễu) Trong quá trình huấn luyện mạng (traning) CNN tự động họccác giá trị qua các lớp filter dựa vào cách thức mà bạn thực hiện Ví dụ trong tác

vụ phân lớp ảnh, CNNs sẽ cố gắng tìm ra thông số tối ưu cho các filter tương ứngtheo thứ tự raw pixel > edges > shapes > facial > high-level features Layer cuốicùng được dùng để phân lớp ảnh

Hình 3 Phân layer dựa trên cơ chế convolution

Trong mô hình CNN có 2 khía cạnh cần quan tâm là tính bất biến (LocationInvariance) và tính kết hợp (Compositionality) Với cùng một đối tượng, nếu đốitượng này được chiếu theo các gốc độ khác nhau (translation, rotation, scaling) thì

độ chính xác của thuật toán sẽ bị ảnh hưởng đáng kể Pooling layer có tính bấtbiến đối với phép dịch chuyển (translation), phép quay (rotation) và phép co giãn(scaling) Tính kết hợp cục bộ có các cấp độ biểu diễn thông tin từ mức độ thấpđến mức độ cao và trừu tượng hơn thông qua convolution từ các filter Đó là lý dotại sao CNNs cho ra mô hình với độ chính xác rất cao Cũng giống như cách conngười nhận biết các vật thể trong tự nhiên

Region-based Convolutional Neural Networks (R-CNN) là sự kết hợp của các

đề xuất khu vực với Mạng nơ-ron Convolution (CNN) R-CNN giúp định vị cácđối tượng có mạng lưới sâu và huấn luyện mô hình dung lượng cao chỉ với mộtlượng nhỏ dữ liệu phát hiện có chú thích Nó đạt được độ chính xác phát hiện đốitượng tuyệt vời bằng cách sử dụng ConvNet sâu để phân loại các đề xuất đốitượng

RCNN sử dụng:

 Thuật toán selective search để đưa ra khoảng 2000 bounding boxes, haycòn gọi là region proposals, chứa các vùng có thể có đối tượng ở trong.Selective search là một phương pháp nằm trong nhóm region proposal

Trang 6

Trong phương pháp selective search (SS), chúng ta bắt đầu bằng cách xemcác pixel là mỗi nhóm, các lần lặp tiếp theo sẽ tính khoảng cách ngữ nghĩa(ví dụ như là màu sắc, cường độ ánh sáng) giữa các nhóm và gom các nhóm

có khoảng cách gần nhau về chung 1 nhóm để tìm ra phân vùng có khảnăng cao nhất chứa đối tượng (ưu tiên gom những nhóm nhỏ trước)

Hình 4 Kết quả selective search qua thuật toán Graph Based Image Segmentation

 Các mạng đã được huấn luyện sẵn như Alex-net, VGG-16 để tính toánfeed-forward các regions thu được convolutional features của mỗi region,sau đó huấn luyện SVM để xác định được vật thể nào được chứa trongregion proposal đó

 Linear Regression để hiệu chỉnh các giá trị (vị trí các đỉnh) của regionproposer

Quy trình:

 Sử dụng các pre-train về phân loại ảnh, ví dụ như VGG hay Resnet đãđược train cho bộ ImageNet dataset Nhiệm vụ phân loại liên quan đến Nlớp

 Đề xuất các ROI Pooling bằng thuật toán selective search để có đượckhoảng 2000 region proposals ROI Pooling là một loại max pooling dùng

để chuyển đổi các feature trong projected region của hình ảnh với mọi size(hxw) thành một window với kích thước cố định (HxW) Input region sẽđược chia làm HxW grids, xấp xỉ cho mỗi subwindow có kích thước h/H xw/W Sau đó sử dụng max-pooling cho mỗi grid.

Trang 7

Hình 5 Region of interest pooling

 Smooth từng region proposals và áp dụng CNN để trích xuất các đặc trưng

 Áp dụng SVM (Support Vector Machine - phương pháp tìm mặt phân cáchsao cho margin tìm được là lớn nhất, đồng nghĩa với việc các điểm dữ liệu

an toàn nhất so với mặt phân cách.) do lớp chỉ định để cho điểm từng đềxuất

 Xếp hạng các region proposals, sử dụng NMS (Non-maximum suppression)

để lấy các box, loại bỏ các box dư thừa

Trang 8

Hình 6 Proposal box sau khi sử dụng NMS (Non-maximum suppression)

Thuật toán NMS

 Input:

- Tập danh sách các proposals box ký hiệu là B với:

B = {b1,b2,…,bn}, với bi là proposal thứ i

- Tập điểm của mỗi proposal box ký hiệu là S với:

S = {s1,s2,…,sn}, si là điểm confidence của box bi

- Giá trị ngưỡng overlap threshold N

- Cả hai giá trị bi và si đều là output của mạng neural network

 Output: Một tập các proposals box D là tập các proposals đã loại bỏ

dư thừa tương ứng với từng object trong hình

 Quy trình:

- Bước 1: Khởi tạo tập output D = {}

- Bước 2:Chọn ra proposal box có điểm confidence cao nhất trongtập S, loại box đó ra khỏi tập S, B và thêm nó vào tập D

- Bước 3: Tính giá trị IOU – tức giá trị diện tích chồng lên nhaugiữa predicted bounding-box và ground-truth bounding box,(IOU càng gần 1 thì độ chính xác càng cao, IOU =Ỉntersection/Union) giữa proposal box mới vừa loại ra ở bước 2với toàn bộ proposal box trong tập B Nếu có bất kỳ box nào đó

có giá trị IOU lớn hơn giá trị ngưỡng N thì loại box đó ra khỏi B,S

- Bước 4: Lặp lại bước 2 đến khi nào không còn box nào có trongtập B

 Hạn chế của thuật toán:

- Toàn bộ quá trình loai bỏ những box dư thừa đều phụ thuộc vàogiá trị ngưỡng N Việc chọn lựa giá trị N chính là chìa khóathành công của mô hình Tuy nhiên, việc chọn giá trị ngưỡng nàytrong các bài toán khá khó Và với việc chỉ sử dụng giá trị N sẽgặp trường hợp: Giả sửa giá trị ngưỡng N chọn là 0.5 Có nghĩa

là nếu box có giá trị lớn IOU đều bị loại bỏ, ngay cả với trườnghợp điểm score si của nó có giá trị cao Ngược lại, giả sử box cóđiểm score si thấp nhưng IOU của nó nhỏ hơn 0.5 thì nó lại đượcnhận

- Để giải quyết bài toán này Navaneeth Bodla đã đề xuất một cảitiến nhỏ và đặt tên thuật toán là Soft-NMS Ý tưởng được đề ra

Trang 9

như sau: Thay vì phải loại bỏ hoàn toàn proposal, chúng ta sẽgiảm giá trị confidence của box đi.

Hình 7 Thuật toán NMS

Giá trị si được cập nhật lại như sau:

Hình 8 Giá trị si sau khi cập nhật

 Sử dụng các hàm hồi quy do lớp chỉ định để tinh chỉnh các vị trí

R-CNN có khả năng mở rộng quy mô đến hàng nghìn lớp đối tượng mà khôngcần dùng đến các kỹ thuật gần đúng Tuy nhiên, có những nhược điểm đáng chú ý:

 Huấn luyện là một đường ống nhiều giai đoạn: R-CNN lần đầu tiên tinhchỉnh ConvNet trên các đề xuất đối tượng bằng cách sử dụng log loss Sau

đó, nó phù hợp với SVM với các tính năng của ConvNet Các SVM nàyhoạt động như bộ phát hiện đối tượng, thay thế bộ phân loại softmax đã họcbằng cách tinh chỉnh Trong giai đoạn huấn luyện thứ ba, bounding-boxregressors được tạo ra

 Huấn luyện tốn về không gian và thời gian: Đối với SVM và huấn luyệnbounding-box regressors, các tính năng được trích xuất từ mỗi đề xuất đốitượng trong mỗi hình ảnh và được ghi vào đĩa Với các mạng rất sâu, chẳng

Trang 10

hạn như VGG16, quá trình này mất 2,5 ngày GPU cho 5000 hình ảnh của

bộ trainval VOC07 Các tính năng này yêu cầu dung lượng lưu trữ hàngtrăm gigabyte

 Đối tượng phát hiện chậm: Tại thời điểm thử nghiệm, các tính năng tríchxuất từ mỗi đề xuất đối tượng trong mỗi hình ảnh thử nghiệm R-CNNchậm vì nó thực hiện chuyển tiếp ConvNet vượt qua cho mỗi đề xuất đốitượng, mà không cần chia sẻ tính toán, không thể áp dụng cho real-time vìmỗi ảnh trong testset mất rất nhiều thời gian xử lý

Hình 9: Object detection pipeline with region of interest pooling

5.2 Fast R-CNN

Trang 11

Hình 10 Fast R-CNN

Fast R-CNN dựa trên công việc trước đó để phân loại hiệu quả các đề xuất đốitượng bằng cách sử dụng mạng phức hợp sâu – pretrained CNN Tương tự như R-CNN thì Fast R-CNN vẫn dùng selective search để lấy ra các region proposal Tuynhiên là Fast R-CNN không tách 2000 region proposal ra khỏi ảnh và thực hiệnbài toán image classification cho mỗi ảnh Fast R-CNN cho cả bức ảnh vàoConvNet(một vài convolutional layer + max pooling layer) để tạo ra convolutionalfeature map Sau đó các vùng region proposal được lấy ra tương ứng từconvolutional feature map Tiếp đó được Flatten và thêm 2 Fully connected layer(FCs) để dự đoán lớp của region proposal và giá trị offset values của boundingbox Tuy nhiên là kích thước của các region proposal khác nhau nên khi Flatten sẽ

ra các vector có kích thước khác nhau nên không thể áp dụng neural networkđược Vì vậy Fast R-CNN đã resize các region proposal về cùng kích thước trướckhi dùng transfer learning

Fast R-CNN:

 Sử dụng các mạng huấn luyện sẵn để feed-forward các region proposals, sẽtốn nhiều thời gian bởi với mỗi ảnh thuật toán selective search sẽ cho rahàng nghìn region proposals

 Feed-forward một lần đối với ảnh gốc, thu được convolutional features củaảnh đó Ví dụ với một hình ảnh có kích thước 600∗600∗3, ta sẽ thu đượcconvolutional features với kích thước 37∗37∗512 Kích thước của features

bị giảm nhỏ khoảng 16 lần 600/37

 Dựa vào kích thước cùng vị trí của các region proposals đối với ảnh gốc, ta

sẽ tính toán được vị trí của region proposal trong convolutional features

 Sửa dụng giá trị convolutional faetures của region proposal, ta dự đoánđược vị trí các đỉnh của bounding box cũng như vật thể nằm trongbounding box là gì

Các bước thực hiện:

 Bước 1: Sử dụng pre-train CNN về phân loại ảnh

 Bước 2: Sử dụng thuật toán selective search để sinh ra các region proposals

 Bước 3: Sau khi pre-train CNN:

 Thay thế maxpooling layer cuối cùng của pre-train CNN thành RoIpooling layer Output của RoI pooling layer là một feature vector củaregion proposals với length đã được fix Chia sẽ tính toán CNN có rấtnhiều ý nghĩa vì nhiều region proposals của cùng một ảnh có khả năngchồng chéo rất cao

Trang 12

 Thay thế fully connected layer cuối và softmax layer cuối cùng (Kclasses) thành fully connected layer và softmax layer K + 1 classes

 Bước 4: Model được chia ra làm 2 output layer:

 Sftmax estimator của K+1 classes (giống như RCNN và +1 làbackground), output là một phân phối xác suất rời rạc cho mỗi RoI

 Bouding-box regression

So với công việc trước đây, Fast R-CNN sử dụng một số cải tiến để cải thiệntốc độ huấn luyện và kiểm tra đồng thời tăng độ chính xác của phát hiện Fast R-CNN huấn luyện nhanh hơn R-CNN, SPPnet Fast R-CNN được triển khai bằngPython và C ++ (sử dụng Caffe)

Ưu điểm:

 Chất lượng phát hiện(mAP) cao hơn R-CNN, SPPnet

 Huấn luyện là một giai đoạn, sử dụng mutil-task loss

 Huấn luyện có thể cập nhật tất cả các lớp mạng

 Không cần bộ nhớ lưu trữ cho bộ nhớ đệm tính năng

Nhược điểm lớn nhất là mô hình vẫn dựa vào thuật toán selective search (hoặc

bất kỳ thuật toán đề xuất khu vực nào khác) Thời gian xử lý được cải thiện nhưngvẫn không cho là đáng kể vì các proposal region được tạo ra từ mô hình khác vàđiều đó rất tốn kém

5.3 Faster R-CNN

Hình 11 Faster R-CNN

Faster R-CNN là một thuật toán phát hiện đối tượng tương tự như R-CNN.Nhưng Faster R-CNN không dùng thuật toán selective search để lấy ra các regionproposal, mà sử dụng thêm một mạng CNN gọi là Region Proposal Network(RPN) để tìm các region proposal Đầu tiên cả bức ảnh được cho qua pre-trainedmodel để lấy feature map Sau đó feature map được dùng cho Region ProposalNetwork để lấy được các region proposal Sau khi lấy được vị trí các region

Trang 13

proposal thì thực hiện tương tự Fast R-CNN Faster R-CNN xây dựng một môhình duy nhất bao gồm RPN (region proposal network) và Fast RCNN với cáiCNN được chia sẻ.

Hình 12 Kiến trúc Fast R-CNN

Region Proposal Network (RPN) Input của RPN là feature map và output làcác region proposal

Hình 13 Region proposal

Trang 14

Một region proposal xác định bằng 2 điểm ở 2 góc, ví dụ: A(x_min, y_min)

và B(x_max, y_max) Khi RPN dự đoán cần phải rằng buộc x_min < x_max vày_min < y_max Hơn nữa các giá trị x, y khi dự đoán có thể ra ngoài khỏi bức ảnh.Nhưng thay vì dự đoán 2 góc, ta sẽ dự đoán điểm trung tâm (x_center, y_center)

và width, height của hình chữ nhật Mỗi điểm như vậy là một anchor Như vậymỗi anchor được xác định bằng 4 tham số (x_center, y_center, width, height)

Một anchor (pre-defined boxes) được định nghĩa trước lúc khi huấn luyện

mô hình Faster R-CNN không sử dụng Selective search nên RPN ban đầu cần xácđịnh các “anchor box” có thể là region proposal, sau đó qua RPN thì chỉ ouputnhững anchor box chắc chắn chứa đối tượng Anchor trong Faster-RCNN đượcđịnh nghĩa với 9 anchors ứng với mỗi điểm pixel trên feature map Chú ý rằng,việc tính toán tổng số lượng anchor là dựa trên kích thước của feature map Tuynhiên, kích thước và ratio của anchor thì đều phải tham chiếu ngược lại kích thướccủa ảnh gốc ban đầu Các anchor được tạo ra là ứng với từng điểm pixel trênfeature map và thông thường được định nghĩa với 3 anchor size và 3 anchor ratiokhác nhau như hình dưới

Hình 14 Anchor with feature map

Trang 15

Các anchor này được chỉ định là positive / negative (object / background) dựavào diện tích trùng lặp hay IoU overlap với ground truth bounding box theo rulesau:

 Các anchor có tỉ lệ IoU lớn nhất với ground truth box sẽ được coi là positive

 Các anchor có tỉ lệ IoU >= 0.7 sẽ được coi là positive

 Các anchor có tỉ lệ IoU < 0.3 sẽ được coi là negative (background)

 Các anchor nằm trong khoảng 0.3 <= x < 0.7 sẽ được coi là neutral (trung tính)

là sẽ không được sử dụng trong quá trình huấn luyện mô hình

lệ khác nhau Giống như hình bên phải với tâm ở giữa 3 kích thước ứng với màu

da cam, xanh lam, xanh lục và với mỗi kích thước có 3 tỉ lệ Việc của RPN là lấy

ra các region proposal giống như selective search thôi chứ không phải là phân loạiảnh Mô hình RPN khá đơn giản, feature map được cho qua Conv layer 3*3, 512kernels Sau đó với mỗi anchor lấy được ở trên, RPN thực hiện 2 bước:

 Bước 1: Dự đoán xem anchor đấy là foreground (chứa object) haybackground (không chứa object)

 Bước 2: Dự đoán 4 offset value cho x_center, y_center, width, height chocác anchor

Sau cùng dựa vào phần trăm dự đoán background RPN sẽ lấy N anchor đểlàm region proposal

Trang 16

Hình 12 RPN network model

Các bước thực hiện:

 Bước 1: Sử dụng pre-train CNN về phân loại ảnh

 Bước 2: Fine-tune RPN (region proposal network) cho nhiệm vụ đề xuấtkhu vực, được khởi tạo bởi pre-train image classifier Các positiveexample có IoU > 0.7, các negative example có IoU < 0.3 Trượt mộtwindow nhỏ có kích thước nxn trên toàn bộ CNN feature của hình ảnh.Tại center của mỗi window, predict nhiều vùng có scales và ratio khácnhau cùng một lúc Anchor là một sự kết hợp của sliding windowcenter, cale và ratio Ví dụ, 3 scales + 3 ratios, suy ra k = 9 anchors tạimỗi vị trí trượt

 Bước 3: Huấn luyện mô hình Fast R-CNN sử dụng các proposals regionđược sinh ra từ RPN hiện tại

 Bước 4: Sau đó sử dụng mạng Fast R-CNN để khởi tạo đào tạo RPN.Trong khi giữ các lớp convolution được chia sẻ, chỉ fine-tune các lớpRPN cụ thể Ở giai đoạn này, RPN và detection network đã chia sẻ cáclớp convolution

Trang 17

 Bước 5: Fine-tune các layer riêng biệt của Fast R-CNN.

 Bước 6: Bước 4-5 có thể được lặp lại để huấn luyện mạng RPN và FastR-CNN nếu cần

Hình 13 R-CNN Test-Time Speed

5.4 Single Shot Detector (SSD)

Hình 14 Kiến trúc Single Shot Detector (SSD)

Single Shot Detector (SSD) là một phương pháp để phát hiện các đối tượngtrong ảnh bằng cách sử dụng một mạng nơron sâu duy nhất SSD đến từ việc sửdụng các bounding box, bằng việc khởi tạo sẵn các box tại mỗi vị trí trên ảnh, SSD

sẽ tính toán và đánh giá thông tin tại mỗi vị trí xem vị trí đó có vật thể hay không,

Ngày đăng: 14/05/2022, 13:57

HÌNH ẢNH LIÊN QUAN

Hình 2. Sliding Windows - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 2. Sliding Windows (Trang 4)
Hình 3. Phân layer dựa trên cơ chế convolution - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 3. Phân layer dựa trên cơ chế convolution (Trang 5)
Hình 4. Kết quả selective search qua thuật toán Graph Based Image Segmentation - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 4. Kết quả selective search qua thuật toán Graph Based Image Segmentation (Trang 6)
Hình 5. Region of interest pooling - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 5. Region of interest pooling (Trang 7)
Hình 6. Proposal box sau khi sử dụng NMS (Non-maximum suppression) - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 6. Proposal box sau khi sử dụng NMS (Non-maximum suppression) (Trang 8)
Hình 7. Thuật toán NMS - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 7. Thuật toán NMS (Trang 9)
Hình 9: Object detection pipeline with region of interest pooling - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 9 Object detection pipeline with region of interest pooling (Trang 10)
Hình 10. Fast R-CNN - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 10. Fast R-CNN (Trang 11)
Hình 11. Faster R-CNN - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 11. Faster R-CNN (Trang 13)
Hình 13. Region proposal - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 13. Region proposal (Trang 14)
Hình 12. Kiến trúc Fast R-CNN - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 12. Kiến trúc Fast R-CNN (Trang 14)
và width, height của hình chữ nhật. Mỗi điểm như vậy là một anchor. Như vậy mỗi anchor được xác định bằng 4 tham số (x_center, y_center, width, height) - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
v à width, height của hình chữ nhật. Mỗi điểm như vậy là một anchor. Như vậy mỗi anchor được xác định bằng 4 tham số (x_center, y_center, width, height) (Trang 15)
Hình 11. Image Anchor - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 11. Image Anchor (Trang 16)
Hình 12. RPN network model - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 12. RPN network model (Trang 17)
Hình 14. Kiến trúc Single Shot Detector (SSD) - BÁO CÁO GIỮA KỲ MÔN: MACHINE LEARNING  Đề tài: OBJECT DETECTION
Hình 14. Kiến trúc Single Shot Detector (SSD) (Trang 18)

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w