Download as pdf or txt
Download as pdf or txt
You are on page 1of 20

Mỗi bài tập SV thực hiện theo 3 cách hiển thị sau:

1. Hiển thị theo Matplotlib: áp dụng cho ảnh tĩnh.


2. Hiển thị theo cách chọn số hay ký tự trên bàn phím: áp dụng cho ảnh thời gian thực.
3. Hiển thị theo cách xuất hiện tự động: áp dụng cho ảnh tĩnh.
----------------------------------------------------------------------------------------------------------
Đề 1: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để đọc, hiển thị, lưu ảnh. Giải thích các tham số và
cách sử dụng của 1 hàm (được chỉ định theo nhóm).
Imread_ IMREAD_GRAYSCALE (0)
Imread_ IMREAD_ IMREAD_COLOR (1)
Imread_ IMREAD_ IMREAD_UNCHANGED (-1)
Threshold_THRESH_BINARY_INV
Threshold_THRESH_TRUNC
Threshold_THRESH_TOZERO
Threshold_THRESH_TOZERO_INV
Threshold_THRESH_OTSU
adaptiveThreshold_ADAPTIVE_THRESH_GAUSSIAN_C
adaptiveThreshold_ADAPTIVE_THRESH_MEAN_C
----------------------------------------------------------------------------------------------------------
Đề 2: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để đọc, hiển thị, lưu ảnh. Giải thích các tham số và
cách sử dụng của 1 hàm (được chỉ định theo nhóm).
VideoCapture
VideoWriter
Cap.get
Cap.set (đặt khung ảnh 320x240)
----------------------------------------------------------------------------------------------------------

1
Đề 3: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để viết chương trình biến đổi không gian màu trên
ảnh. Giải thích các tham số và cách sử dụng của 1 hàm (được chỉ định theo nhóm).
Original image (RGB)
GRAY
HSV
YcbCr
CIE-LAB
CMYK (áp dụng theo công thức tính toán)
----------------------------------------------------------------------------------------------------------
Đề 4: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô phỏng
Pycharm hoặc tương đương để viết chương trình áp dụng các hàm truy xuất và
biến đổi ảnh. Giải thích các tham số và cách sử dụng của 1 hàm (được chỉ định
theo nhóm).

Original image
Split_images
merge_images
Contrast_images
Brightness_images
histogram_equalization
Shape = Shape_images (hiển thị kết quả là các con số)
Cal = histogram_calculation (hiển thị kết quả là các con số)
Com = histogram_comparison (hiển thị kết quả là các con số)
----------------------------------------------------------------------------------------------------------
Đề 5: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để áp dụng các hàm toán đại số thực hiện trên ảnh.
Giải thích các tham số và cách sử dụng của 1 hàm (được chỉ định theo nhóm).
Original_image

2
Add
Subtract
Multiply
Divide
Pow
AddWeighted (trộn 2 ảnh cùng kích thước)
AddWeighted (trộn 2 ảnh khác kích thước)
----------------------------------------------------------------------------------------------------------
Đề 6: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần mềm
mô phỏng Pycharm hoặc tương đương để áp dụng các hàm toán logic thực hiện
trên ảnh. Giải thích các tham số và cách sử dụng của 1 hàm (được chỉ định theo
nhóm).

Original_image
bitwise_not
bitwise_or
bitwise_xor
bitwise_and
----------------------------------------------------------------------------------------------------------
Đề 7: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để áp dụng các hàm vẽ các đường cơ bản thực hiện
trên ảnh. Giải thích các tham số và cách sử dụng của 1 hàm (được chỉ định theo nhóm).
Original_image
line
circle
rectangle
ellipse
putText
ployline
3
fillpoly
----------------------------------------------------------------------------------------------------------
Đề 8: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để áp dụng các hàm vẽ các đường cơ bản thực hiện
trên ảnh camera hiển thị ảnh bằng cách click chuột (dùng hàm setMouseCallback). Giải
thích các tham số và cách sử dụng của 1 hàm (được chỉ định theo nhóm). SV chọn ấn 1
phím sau đó click chuột để vẽ một hình khác.
Original_image
line
circle
rectangle
ellipse
----------------------------------------------------------------------------------------------------------
Đề 9: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để áp dụng các hàm vẽ hình tròn và chữ nhật bằng
cách chọn màu từ thanh trackbar nhấp và rê chuột lên ảnh tĩnh. Giải thích các tham số và
cách sử dụng của 1 hàm (được chỉ định theo nhóm). SV thay đổi giá trị từ thanh trackbar
để chọn màu vẽ, ấn 1 phím để chọn hình vẽ sau đó ấn giữ và rê chuột để vẽ hình. Gợi ý
các hàm sau getTrackbarPos, createTrackbar, setMouseCallback
Original_image (mở ảnh tĩnh)
line
circle
rectangle
ellipse
----------------------------------------------------------------------------------------------------------
Đề 10: Ứng dụng vẽ hình lên ảnh và camera: vẽ hình lên ảnh và camera
STT 1: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 hình vuông trên ảnh được mở từ camera

4
----------------------------------------------------------------------------------------------------------
STT 2: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 hình tam giác trên ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 3: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 hình ngũ giác trên ảnh được mở từ camera

5
----------------------------------------------------------------------------------------------------------
STT 4: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 hình tròn trên ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 5: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 đường tròn trên ảnh được mở từ camera

6
----------------------------------------------------------------------------------------------------------
STT 6: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 đường tam giác trên ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 7: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 đường hình vuông trên ảnh được mở từ camera

7
----------------------------------------------------------------------------------------------------------
STT 8: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 hình elip trên ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 9: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 đường elip trên ảnh được mở từ camera

8
STT 10: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 đường chữ nhật trên ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 11: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 hình chữ nhật trên ảnh được mở từ camera

9
----------------------------------------------------------------------------------------------------------
STT 12: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 đường thẳng trên ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 13: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ 1 đường gấp khúc trên ảnh được mở từ camera

10
-
--------------------------------------------------------------------------------------------------
STT 14: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một nữa đường tròn trên ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 15: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một phần tư đường tròn trên ảnh được mở từ camera

11
----------------------------------------------------------------------------------------------------------
STT 16: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ ba phần tư đường tròn trên ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 17: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ hình lục giác lên trên ảnh được mở từ camera

12
----------------------------------------------------------------------------------------------------------
STT 18: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một hình lục giác trên ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 19: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một đường hình vuông tại tâm của ảnh được mở từ
camera

13
----------------------------------------------------------------------------------------------------------
STT 20: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một đường elip tại tâm của ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 21: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một đường tam giác tại tâm của ảnh được mở từ camera

14
STT 22: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một đường chữ nhật tại tâm của ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 23: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một hình tròn tại tâm của ảnh được mở từ camera

15
STT 24: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một hình elip tại tâm của ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 25: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:
Mở rộng: Viết họ tên và vẽ một hình vuông tại tâm của ảnh được mở từ camera

----------------------------------------------------------------------------------------------------------
STT 26: Sử dụng các hàm vẽ hình trong OpenCV, dùng ngôn ngữ Python và phần
mềm mô phỏng Pycharm hoặc tương đương để vẽ hình như sau và kèm tên của sinh viên
vào dưới chân của hình:

16
Mở rộng: Viết họ tên và vẽ một hình gấp khúc trên ảnh được mở từ camera
----------------------------------------------------------------------------------------------------------
Mỗi bài tập SV thực hiện theo 3 cách hiển thị sau:
1. Hiển thị theo Matplotlib: áp dụng cho ảnh tĩnh.
2. Hiển thị theo cách chọn số hay ký tự trên bàn phím: áp dụng cho ảnh thời gian thực.
3. Hiển thị theo cách xuất hiện tự động: áp dụng cho ảnh tĩnh.
----------------------------------------------------------------------------------------------------------
Đề 1: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để viết chương trình mô phỏng các kỹ thuật truy xuất
và biến đổi ảnh của hàm như mô tả bên dưới cho ảnh. Giải thích các tham số và cách sử
dụng của 1 hàm (được chỉ định theo nhóm).
Original image
Split_images
Merge_images
Contrast_images
Brightness_images
histogram_equalization
Shape = Shape_images (hiển thị kết quả là các con số)
Cal = histogram_calculation (hiển thị kết quả là các con số)
Com = histogram_comparison (hiển thị kết quả là các con số)

17
----------------------------------------------------------------------------------------------------------
Đề 2: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để thay đổi kích thước ảnh, xoay ảnh, chồng. Giải
thích các tham số và cách sử dụng của 1 hàm (được chỉ định theo nhóm).
Original_image
Resize_images
Rotation_images
Fourier_ images
Adding_images (dùng thanh trackbar)
----------------------------------------------------------------------------------------------------------
Đề 3: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để áp dụng các hàm phóng to, thu nhỏ, dịch chuyển,
xoay, biến đổi Affine thực hiện trên ảnh tĩnh hiển thị ảnh. Giải thích các tham số và cách
sử dụng của 1 hàm (được chỉ định theo nhóm).
Original_image
getPerspectiveTransform
warpAffine
warpPerspective
----------------------------------------------------------------------------------------------------------
Đề 4: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để viết chương trình áp dụng các hàm lọc cho ảnh.
Giải thích các tham số và cách sử dụng của 1 hàm (được chỉ định theo nhóm).
Original image
Bilateral
Filter2D
BoxFilter
Gaussian
Median
Blur
Laplace
18
kuwahara
----------------------------------------------------------------------------------------------------------
Đề 5: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương viết chương trình áp dụng các hàm tìm biên cho ảnh.
Giải thích các tham số và cách sử dụng của 1 hàm (được chỉ định theo nhóm).
Original image
Canny
Laplacian
Sobel_x
Sobel_y
Sobel
Scharr_x
Scharr_y
Scharr
----------------------------------------------------------------------------------------------------------
Đề 6: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô
phỏng Pycharm hoặc tương đương để viết chương trình áp dụng các hàm biến đổi hình
thái học ảnh tĩnh. Giải thích các tham số và cách sử dụng của 1 hàm (được chỉ định theo
nhóm).
Original image
Opening
Closing
Gradient
Top-hat
Black-hat
----------------------------------------------------------------------------------------------------------
Đề 7: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô phỏng
Pycharm hoặc tương đương để viết chương trình áp dụng các hàm biến đổi hình
thái học ảnh. Giải thích các tham số và cách sử dụng của 1 hàm (được chỉ định
theo nhóm).

19
Original image
Hit or miss
Hit or fit
Dilatation - erosion (giãn trừ co)
Thinning
Thickening
----------------------------------------------------------------------------------------------------------
Đề 8: Sử dụng các hàm trong OpenCV, dùng ngôn ngữ Python và phần mềm mô phỏng
Pycharm hoặc tương đương viết chương trình áp dụng các hàm biến đổi Hough
và tìm monent, diện tích và chu vi của đối tượng tương ứng trên ảnh. Giải thích
các tham số và cách sử dụng của 1 hàm (được chỉ định theo nhóm).

Original_Image
Hough_Lines
Hough_LinesP
Hough_Circles
Find_Contours
Contours_Hull
F = moments (hiển thị kết quả là các con số ra màn hình)
G = contourArea (hiển thị kết quả là các con số ra màn hình)
H = arcLength (hiển thị kết quả là các con số ra màn hình)
----------------------------------------------------------------------------------------------------------

20

You might also like