Tải bản đầy đủ (.docx) (70 trang)

Ứng dụng xử lý ảnh kiểm tra sản phẩm trên dây truyền đóng chai nước ngọt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.01 MB, 70 trang )

LỜI CẢM ƠN
Đầu tiên em xin chân thành cảm ơn TS. Phạm Đức Long - người đã trực
tiếp hướng dẫn và định hướng giúp em có thể nhanh chóng tiếp cận, nắm bắt
kiến thức và hoàn thành đề tài.
Em xin gửi lời cảm ơn tới toàn thể thầy cô giáo khoa bộ môn Hệ thống
thông tin – trường Đại học công nghệ thông tin và truyền thông, đã tận tình
giảng dạy trang bị cho em những kiến thức quý báu trong những năm học vừa
qua.
Em xin gửi lời cảm ơn đến những người thân trong gia đình, bạn bè đã
động viên và tạo mọi điều kiện giúp chúng em trong quá trình học tập cũng
như trong cuộc sống.
Mặc dù em đã cố gắng hoàn thành tốt đề tài nhưng cũng không thể tránh
khỏi những sai sót nhất định, rất mong được sự thông cảm và đóng góp ý kiến
của thầy cô giáo và các bạn.

1


LỜI CAM ĐOAN
Em xin cam đoan nội dung đồ án của em không sao chép nội dung cơ
bản từ các đồ án khác và sản phẩm của đồ án là của chính bản thân em nghiên
cứu xây dựng lên. Mọi thông tin sai lệch em xin hoàn toàn chịu trách nhiệm
trước hội đồng bảo vệ.

Sinh viên
Dương Thị Huệ

2


MỤC LỤC



DANH MỤC HÌNH ẢNH

3


LỜI NÓI ĐẦU
Trong thế kỉ XXI, thế kỷ của tin học và tự động hóa thì việc đấy mạnh
ứng dụng tin học vào các ứng dụng thực tiễn là một mục tiêu được nhà nước
quan tâm và phát triển. Việc nắm bắt, khai thác và xử lí thông tin càng nhanh,
càng chính xác, linh hoạt bao nhiêu thì con đường dẫn đến thành công càng gần
bấy nhiêu.
Ứng dụng tin học trong sản xuất ở khâu kiểm tra là một vấn đề rất cần
thiết, nó nâng cao hiệu quả của việc kiểm tra, đánh giá kết quả sản phẩm. Giúp
cho con người giảm được khó khăn, tránh được sai sót trong quá trình kiểm tra
sản phẩm từ đó tiết kiệm được rất nhiều thời gian và chi phí. Có rất nhiều công
nghệ được ứng dụng trong sản xuất công nghiệp trong đó công nghệ xử lý ảnh
ngày càng được quan tâm và ứng dụng rộng rãi. Một trong những nhiệm vụ xử

lý ảnh khó khăn nhất đó là việc tạo ra các bức ảnh thích hợp cho việc kiểm
tra các chi tiết khác nhau trên cùng một nền ảnh gốc. Vấn đề xử lý ảnh là
mấu chốt cho việc giải quyết những vướng mắc về việc kiểm tra lỗi sản
phẩm cho ngành sản xuất tự động. Vì vậy e đã chọn đề tài “Ứng dụng xử lý
ảnh để kiểm tra sản phẩm trên dây chuyền đóng chai nước ngọt” với mục
đích xây dựng chương trình xử lý ảnh kiểm tra lỗi sản phẩm trên dây chuyền
đóng chai nước ngọt.
Nội dung đề tài được thể hiện qua 3 chương:
Chương 1: Tổng quan
Chương 2: Xử lý ảnh và các phương pháp xử lý ảnh cơ bản.
Chương 3: Ứng dụng xử lý ảnh phát hiện lỗi trong dây chuyền đóng chai

nước ngọt.

4


Chương 1: TỔNG QUAN
1.1.

Giới thiệu chung về ngôn ngữ CSharp
Ngôn ngữ C# khá đơn giản, chỉ khoảng 80 từ khóa và hơn mười mấy kiểu

dữ liệu được xây dựng sẵn. Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó
thực thi những khái niệm lập trình hiện đại. C# bao gồm tất cả những hỗ trợ
cho cấu trúc, thành phần component, lập trình hướng đối tượng. Những tính
chất đó hiện diện trong một ngôn ngữ lập trình hiện đại. Và ngôn ngữ C# hội
đủ những điều kiện như vậy, hơn nữa nó được xây dựng trên nền tảng của hai
ngôn ngữ mạnh nhất là C++ và Java..
C# có các đặc trưng sau:


Là ngôn ngữ đơn giản.



C# là ngôn ngữ hiện đại.



C# là ngôn ngữ hướng đối tượng.




C# là ngôn ngữ mạnh mẽ và mềm dẻo.



C# là ngôn ngữ hướng module.



C# sẽ trở nên phổ biến.

1.1.1. Môi trường lập trình
a. Sử dụng Notepad soạn thảo
5


b. Sử dụng Micosoft Visual Studio để tạo trương trình

1.1.2. Biến, hằng, toán tử
a. Biến: Là một vùng lưu trữ ứng với một kiểu dữ liệu.

Biến có thể được gán giá trị và cũng có thể thay đổi giá trị trong khi thực
hiện các lệnh của chương trình.
Khai báo: <kiể_dữ_liệu> <tên_biến> [=<giá trị>];
b. Hằng: Hằng cũng là một biến nhưng giá tri của hằng không thay đổi trong

khi thực hiện các lệnh của chương trình. Hằng được phân thành 3 loại:
-


Giá trị hằng(literal)

-

Biểu tượng hằng(symbolic constants)

-

Kiểu liệt kê(enumerations)
Khai báo: <const> <Kiểu_dữ_liệu> <tên_hằng>=<giá_trị>;
Hoặc: <enum> <tên_kiểu_liệt_kê>
{ <tên_hằng_1>=<giá_trị_số_1>,
…………..
<tên_hằng_n>=<giá_trị_số_n>;
}

c. Toán tử
-

Toán tử toán học: +,-,*,/,%

6


-

Toán tử tăng / giảm: +=,-=,*=,/=,%=

-


Toán tử tăng giảm 1 đơn vị: ++,--

-

Toán tử gán: =

-

Toán tử quan hệ: ==, !=, >, >=, <, <=

-

Toán tử logic: !, &&, ||

-

Toán tử 3 ngôi: (điều kiện)?(biểu_thức_1): (biểu_thức_2);
1.1.3. Xây dựng lớp, đối tượng
a. Lớp
Để định nghĩa một kiểu dữ liệu mới hay một lớp đầu tiên phải khai báo

rồi sau đó mới định nghĩa các thuộc tính và phương thức của kiểu dữ liệu đó.
Khai báo một lớp bằng cách sử dụng từ khoá class. Cú pháp đầy đủ của khai
báo một lớp như sau:
[Thuộc tính] [Bổ sung truy cập] class <Định danh lớp> [: Lớp cơ sở]
{
phương thức hành động >
}
Định danh lớp chính là tên của lớp do người xây dựng chương trình tạo

ra. Tất cả các thành viên của lớp được định nghĩa bên trong thân của lớp, phần
thân này sẽ được bao bọc bởi hai dấu ({}).

7


Cũng như nhiều ngôn ngữ lập trình hướng đối tượng khác, kiểu trong
C# được định nghĩa là một lớp (class), và các thể hiện riêng của từng lớp được
gọi là đối tượng (object). Ngoài ra còn có các kiểu khác nhau ngoài kiểu lớp
như kiểu liệt kê, cấu trúc và kiểu ủy quyền (delegates).
Hai thành phần chính cấu thành một lớp là thuộc tính hay tính chất và
phương thức hay còn gọi là hành động ứng xử của đối tượng. Trong C# hành
vi được định nghĩa như một phương thức thành viên của lớp. Phương thức
chính là các hàm được định nghĩa trong lớp. Do đó, ta còn có thể gọi các
phương thức thành viên là các hàm thành viên trong một lớp. Các phương
thức này chỉ ra rằng các hành động mà lớp có thể làm được cùng với cách
thức làm hành động đó. Thông thường, tên của phương thức thường được đặt
theo tên hành động, ví dụ như DrawLine() hay GetString().

b.

Thuộc tính truy cập
Thuộc tính truy cập quyết định khả năng các phương thức của lớp bao

gồm việc các phương thức của lớp khác có thể nhìn thấy và sử dụng các biến
thành viên hay những phương thức bên trong lớp.

Thuộc tính

Giới hạn truy cập


Public

Không hạn chế. Những thành viên được đánh dấu
public có thể được dùng bởi bất kì các phương thức của
lớp bao gồm những lớp khác.

Private

Thành viên trong một lớp A được đánh dấu là private

8


thì chỉ được truy cập bởi các phương thức của lớp A.
Protected

Thành viên trong lớp A được đánh dấu là protected
thì chỉ được các phương thức bên trong lớp A và những
phương thức dẫn xuất từ lớp A truy cập.

Internal

Thành viên trong lớp A được đánh dấu là internal thì
được truy cập bởi những phương thức của bất cứ lớp
nào trong cùng khối hợp ngữ với A.

protected internal

Thành viên trong lớp A được đánh dấu là protected

internal được truy cập bởi các phương thức của lớp A,
các phương thức của lớp dẫn xuất của A, và bất cứ lớp
nào trong cùng khối hợp ngữ của A.

Bảng1 : Các thuộc tính truy cập của một lớp
c. Tham số của phương thức

Trong các ngôn ngữ lập trình thì tham số và đối mục được xem là như
nhau, cũng tương tự khi đang nói về ngôn ngữ hướng đối tượng thì ta gọi một
hàm là một phương thức hay hành vi. Tất cả các tên này điều tương đồng với
nhau.
Một phương thức có thể lấy bất kỳ số lượng tham số nào, Các tham số
này theo sau bởi tên của phương thức và được bao bọc bên trong dấu ngoặc
tròn (). Mỗi tham số phải khai báo kèm với kiểu dữ liệu của nó. Bên trong
thân của phương thức, các tham số này như những biến cục bộ, giống như là
9


khai báo biến bên trong phương thức và khởi tạo giá trị bằng giá trị của tham
số truyền vào.

d.

Đối tượng

Những kiểu dữ liệu chuẩn của C# như int, char, float,… là những kiểu dữ
liệu giá trị, và các biến được tạo ra từ các kiểu dữ liệu này được lưu trên stack.
Tuy nhiên, với các đối tượng kiểu dữ liệu tham chiếu thì được tạo ra trên
heap, sử dụng từ khóa new để tạo một đối tượng:
ThoiGian t = new ThoiGian();

t thật sự không chứa giá trị của đối tượng ThoiGian, nó chỉ chứa địa chỉ của
đối tượng được tạo ra trên heap, do vậy t chỉ chứa tham chiếu đến một đối
tượng.
C# cũng cung cấp cơ chế thu dọn (garbage collection) hay là hủy đối
tượng. Khi làm việc với các đoạn mã không được quản lý thì cần phải khai
báo tường minh các phương thức hủy để giải phóng các tài nguyên.
1.2.

Camera và quá trình thu ảnh từ camera

Phân loại theo kỹ thuật hình ảnh camera gồm 3 loại:
1. Camera Analog:

Ghi hình băng từ xử lý tín hiệu analog, xử lý tín hiệu màu vector màu, loại
Camera này hiện nay ít dùng.
10


2. Camera CCD (Charge Couple Device) (100% số): Camera CCD sử dụng kĩ

thuật CCD để nhận biết hình ảnh. CCD là tập hợp những ô tích điện có thể
cảm nhận ánh sáng sau đó chuyển tín hiệu ánh sáng sang tín hiệu số để đưa
vào các bộ xử lý. Nguyên tắc hoạt động của CCD có thể mô tả dưới đây:
CCD thu nhận những hình ảnh thông qua các hệ thống thấu kính của
Camera. CCD có hàng ngàn những điểm ảnh sẽ chuyển đổi ánh sáng thành
những hạt điện tích và được số hoá. Đây là một qúa trình chuyển đổi tương
tự số. Các thông số kĩ thuật của Camera CCD là đường chéo màn hình cảm
biến (tính bằng inch ). Kích thước màn hình cảm biến càng lớn thì chất
lượng càng tốt. (màn hình 1/3 inch Sony CCD sẽ có chất lượng tốt hơn 1/4
inch CCD, vì 1/3 > 1/4). Hiện nay chỉ có 2 hãng sản xuất màn hình cảm biến

là Sony và Sharp. Chất lượng của Sharp kém hơn chất lượng của Sony.
3. Camera CMOS (complementary metal oxide semiconductor). CMOS có nghĩa

là chất bán dẫn có bổ sung oxit kim loại. Các loại Camera số sử dụng công
nghệ CMOS. Các Camera số thương mại sử dụng công nghệ CMOS thì chưa
đủ khả năng cung cấp trong thời điểm này khi so sánh chất lượng hình ảnh
với Camera CCD. Các Camera thương mại dùng công nghệ CMOS có giá
thành khoảng 500 USD đến 50000 USD. Các Camera số sử dụng công nghệ
CMOS và CCD có ưu điểm rất rõ rệt so với Camera analog về độ rõ nét và
chất lượng hình ảnh. Hiện nay sản phẩm chủ yếu của VIETSENS là loại
Camera CCD.


Chất lượng hình ảnh của một Camera phụ thuộc vào nhiều thông số:

Image Sensor (Cảm biến hình): Hiện tại, chỉ có 2 hãng sản xuất cảm biến
hình trên thế giới là Sony và Sharp. Tuy nhiên cũng có sự khác nhau về chất
lượng dẫn đến khác nhau về giá cả. Ngoài thị trường, bạn có thể thấy 2 chiếc
Camera giống hệt nhau về kiểu dáng, nhưng giá cả khá chênh lệch nhau. Xin
đừng ngạc nhiên, vì thực chất 2 chiếc Camera đó chỉ khác nhau 1 điểm duy
11


nhất là cảm biên hình của hãng nào. Nếu bạn muốn chất lượng hình ảnh tốt,
có 1 lời khuyên là nên dùng cảm biến hình của hãng Sony. Kích thước màn
hình cảm biến càng lớn thì chất lượng càng tốt. (tuy nhiên màn hình 1/3 inch
Sony CCD sẽ có chất lượng tốt hơn 1/4 inch CCD).
Resolution( Độ phân giải): Độ phân giải càng lớn thì chất lượng hình ảnh
càng nét. Thưòng thì trong các ứng dụng không cần thiết phải quan sát thật
rõ nét thì độ phân giải 480 TV Lines là hoàn toàn có thể chấp nhận được.

CCD Total Pixels (Số điểm ảnh): Thông số này nói lên chất lượng hình
ảnh, số điểm ảnh càng lớn thì chất lưọng hình ảnh càng tốt, tuy nhiên, chất
lượng hình ảnh càng tốt thì cũng đồng nghĩa với dung lưọng ảnh càng lớn, và
sẽ tốn bộ nhớ lưu trữ cũng như ảnh hưỏng đến tốc độ đường truyền. Thông
thường là với NTSC: 811 (H) x 508 (V), với PAL: 795 (H)x596 (V). Điều
kiện hoạt động. Minimum Illumination( Cường độ ánh sáng nhỏ nhất):
Thường được tính bằng Lux. Thông số này nói lên rằng, Camera chỉ có thể
hoạt động ở cường độ ánh sáng lớn hơn cường độ ánh sáng nhỏ nhất. Trong
điều kiện quá tối, nếu không phải là Camera có chức năng hồng ngoại thì sẽ
không hoạt động được.
- Ánh nắng mặt trời:4000 lux
- Mây:1000lux.
- Ánh sáng đèn tuýp 500 lux,.
- Bầu trời có mây: 300lux.
- Ánh sáng đèn tuýp đỏ 500 lux, trắng (300 lux) trắng sáng 1lux.
- Đêm không trăng 0.0001 Lux

12


Xin chú ý đến loại Camera có chức năng Auto Iris (Tự động hiệu chỉnh
ánh sáng). Đặc điểm của Camera loại này là chỉ với 1 nguồn sáng nhỏ, nó có
thể tự động khuyếch đại nguồn sáng đó lên để có thể quan sát được.
Power Supply (Nguồn cung cấp): Hiện nay đa số các Camera đều dùng
loại nguồn 12VDC, chỉ một số ít các Camera dùng nguồn khác. Tuy nhiên,
bạn không phải lo lắng đến vấn đề nguồn 12VDC, vì phần lớn các Camera
đều đi kèm với bộ chuyển đổi nguồn, do đó bạn có thể sử dụng trực tiếp
nguồn 220VAC.
Operatinon Temperature (Dải nhiệt độ hoạt động): Phần lớn các
Camera đều cho phép hoạt động trong dải nhiệt độ -100C – 500C, nếu

Camera của bạn được sử dụng trong những điều kiện khắc nghiệt như trong
công nghiệp, khu vực có nhiệt độ cao thì bạn nên sử dụng các loại Camera
chuyên dụng trong công nghiệp.
Operational Humidity (Độ ẩm cho phép):Thông thường, độ ẩm cho
phép là 85% RH (độ ảm tương đối).
Góc quan sát
Trong tài liệu kĩ thuật thường không ghi góc mở, mà ghi thông số d thay cho
góc mở. Có thể sử dụng bảng quy đổi sau:
Tiêu cự

Góc mở

2.8mm

1050

3.6mm

900

4mm

850

6mm

700
13



8mm

550

Bảng 2: bảng quy đổi tiêu cự và góc mở.
Tuỳ vào ứng dụng của bạn mà nên chọn loại Camera có góc quan sát là
bao nhiêu độ. Nếu bạn cần quan sát rộng, có thể chọn loại Camera có góc mở
lớn (thường là 900). Còn nếu chỉ muốn quan sát trong một phạm vi rất hẹp thì
cũng sẽ có những loại Camera phù hợp dành cho bạn. Còn nếu muốn góc
quan sát rất lớn, nên chọn loại Camera đặc biệt có chức năng Pan/ Tilt (quay
ngang, quay dọc). Nếu bạn đã có một chiếc Camera nhưng không có chức
năng Pan/Tilt, bạn hoàn toàn có thể cải tiến nó bằng cách lắp thêm một đế
quay ngang, quay dọc, khi đó, bạn có thể điều khiển Camera của bạn quay
theo bất cứ hướng nào bạn muốn.
Môi trường Window đã cung cấp cho ta 2 cách lập trình video. Cách
thứ nhất dung VFW API. Cách thứ 2 là dung AVICap windows. VFW API hỗ
trợ cho quá trình bắt giữ video từ Webcam. AVICap cung cấp cách tiếp cận
dựa trên thông điệp đơn giản, cho phép chúng ta truy cập, điều khiển luồng dữ
liệu audio, video.


Quá trình thu ảnh từ camera:

 Yêu cầu kỹ thuật của Hệ thống camera:

Hệ thống camera bao gồm các cụm chính sau:
- Camera giám sát (Camera analog và đầu ghi kỹ thuật số hoặc camera IP);
- Đường truyền (mạng Lan, Internet).
 Lắp đặt:


14


Vị trí lắp đặt: camera lắp trong nhà kiểm định, đảm bảo kiểm tra được
thao tác kiểm định trên dây chuyền, không bị ngược sáng, không bị ảnh hưởng
của điều kiện thời tiết.
Các thiết bị này rất đa dạng cả về chức năng cũng như sự tiện dụng, cho
nên trước khi quyết định thiết lập một hệ thống giám sát cho văn phòng hay
tại gia, những điều cần lưu ý là khảo sát vị trí lắp đặt webcam hoặc camera có
gần nguồn cấp điện hay không và khu vực quan sát cần thu cả tín hiệu âm
thanh như trong nhà có nuôi động vật hay chỉ ghi riêng hình ảnh, từ đó bạn sẽ
đưa ra được lựa chọn phù hợp cho từng thiết bị cũng như vị trí sử dụng hợp lý.
Như vậy, bạn có thể sử dụng bất cứ loại webcam nào, miễn là thiết bị đó đã
được cài đặt và hoạt động tốt trong môi trường Windows trên máy tính.
1.3.

Giới thiệu hệ quản trị cơ sở dữ liệu Microsorft Access
MS.Access là một hệ quản trị cơ sở dữ liệu của hãng Microsorft chạy

trên môi trường Windows, trên đó có các công cụ hữu hiệu và tiện lợi để tự
động sản sinh chương trình cho hầu hết các bài toán quản lý thường gặp trong
thực tế. với MS.Access, người sử dụng không phải viết từng câu lệnh cụ thể
mà vẫn có được một chương trình hoàn chỉnh. Nếu cần lập trình, MS.Access
có sẵn ngôn ngữ Access Basic để ta có thể lập trình theo ý muốn của người sử
dụng.
Access cho các thao tác dữ liệu khả năng kết nối và công cụ truy vấn
mạnh mẽ của nó giúp công việc tìm kiếm thông tin một cách mau lẹ.
Sáu đối tượng mà Access cung cấp cho người dùng là: Bảng (table),
truy vấn (query), mẫu biểu (Form), báo biểu (report), Macro và Module. Các
đối tượng trên có đầy đủ khả năng lưu trữ dữ liệu, thống kê, kết xuất báo cáo

thông tin và tự động cung cấp nhiều các tác vụ khác.

15


Access không chỉ là một hệ quản trị CSDL mà còn là hệ quản trị CSDL
quan hệ (Relational DataBase). Access cung cấp công cụ Wizard để tự động
tạo bảng, truy vấn, báo cáo hỗ trợ cho người dùng. Ta có thể sử dụng việc
phân tích bảng để tránh dư thừa dữ liệu. Access hỗ trợ rất tốt cho những người
mới bước vào tin học. với winzard và các phương tiện hoạt động tự động khác
sẽ tiết kiệm được thời gian, công sức trong việc xây dựng và thiết kế chương
trình.
Cơ sở dữ liệu (Database): Cơ sở dữ liệu là hệ thống các dữ liệu có cấu
trúc được lưu trữ trên các thiết bị lưu trữ dữ liệu thứ cấp (như băng từ, đĩa từ)
để có thể thỏa mãn yêu cầu khai thác thông tin đồng thời của nhiều người sử
dụng hay nhiều chương trình ứng dụng với nhiều mục đích khác nhau.
Hệ quản trị CSDL: Thep định nghĩa thông thường cơ sở dữ liệu là một
tập hợp dữ liệu liên quan đến một chủa đề hay một công việc nào đó. Có thể
hiểu cơ sở dữ liệu là một vật chứa dung để lưu trữ, quản lý mọi thông tin mà
ta muốn và nó phải có khả năng truy xuất đồng thời.
Ví dụ: Cơ sở dữ liệu về hoạt động kinh doanh của một công ty, trung tâm, cơ
sở dữ liệu về trường học như ở các trường PTTH, đại học chẳng hạn, cơ sở dữ
liệu về quản lý học sinh, sinh viên, quản lý thông tin giới thiệu việc làm…….
Cơ sở dữ liệu quan hệ: là cơ sở dữ liệu trong đó các dữ liệu được đặt
trong các bảng có quan hệ với nhau, mỗi bảng có hình thức hang, cột, mỗi cột
gọi là một vùng, mỗi hang gọi là một mẫu tin.
Hầu hết các hệ quản trị CSDL hiện nay đều lưu trữ và xử lý thông tin
bằng mô hình quản trị CSDL quan hệ. Từ quan hệ bắt nguồn từ thực tế là mỗi
bản ghi trong CSDL chứa các thông tin liên quan đến một chủ thể duy nhất.
Ngoài ra, các các dữ liệu của 2 nhóm thông tin có thể ghép lại thành một chủ

thể duy nhất dựa trên các giá trị dữ liệu quan hệ. trong một hệ quản trị CSDL
16


quan hệ, tất cả các dữ liệu ấy được quản lý theo các bảng, bảng lưu trữ thông
tin về một chủ đề. Thậm chí khi sử dụng một trong những phương tiện của
một hệ CSDL để rút ra thông tin từ một bảng hay nhiều bảng khác (thường
được gọi là truy vấn) thì kết quả cũng giống như một bảng. Thực tế còn còn
có thể hiện một truy vấn dựa trên kết quả của một truy vấn khác.
Các khả năng của một hệ CSDL là cho chúng ta quyền kiểm soát hoàn
toàn bằng cách định nghĩa dữ liệu, làm việc với dữ liệu và chia sẻ với dữ liệu
khác.
Một hệ CSDL có 3 khả năng chính:
Định nghĩa dữ liệu.
Xử lý dữ liệu
Kiểm soát dữ liệu.
Toàn bộ chức năng trên nằm trong các tính năng mạnh mẽ của





Microsoft Access.
 Định nghĩa dữ liệu:
Có nhiều cách xử lý dữ liệu là các bảng, các truy vấn, các biểu mẫu, các
báo cáo, các macro và module trong Microsoft Access.
1.3.1. Bảng dữ liệu
Bảng là đối tượng chủ yếu chứa các thông tin cần quản lý, có thể đó chỉ là
một vài địa chỉ đơn giản hay cả vài chục nghìn bản ghi chứa đựng thông tin
liên quan đến các hoạt động sản xuất kinh doanh của một công ty xuất nhập

khẩu nào đó. Trước khi ta muốn làm việc với bất kỳ một cơ sở dữ liệu
(CSDL) nào thì ta phải có thông tin để quản lý, các thông tin đó nằm trong
các bảng, nó là cơ sở để cho người sử dụng tạo các đối tượng khác trong
CSDL như truy vấn, biểu mẫu, báo biểu...
Bảng là nơi chứa dữ liệu về một đối tượng thông tin nào đó như SINH
VIÊN, HÓA ĐƠN,... Mỗi hàng trong bảng gọi là một bản ghi (record) chứa
17


các nội dung riêng của đối tượng đó. Mỗi bản ghi của một bảng đều có chung
cấu trúc, tức là các trường (field). Ví dụ: Cho bảng dưới đây để quản lý lý
lịch khoa học cán bộ trong trường đại học, có các trường MACB (Mã cán bộ),
TRINHDOVH (Trình độ văn hóa), CHUYENMON (Chuyên môn),... Trong
một CSDL có thể chứa nhiều bảng, thường mỗi bảng lưu trữ nhiều thông tin
(dữ liệu) về một đối tượng thông tin nào đó, mỗi một thông tin đều có những
kiểu đặc trưng riêng, mà với Access nó sẽ cụ thể thành những kiểu dữ liệu của
các trường.
1.3.2. Thiết kế cơ sở dữ liệu
Bước 1: Xác định mục tiêu khai thác CSDL của chúng ta. Điều này quyết
định các loại sự kiện chúng ta sẽ đưa vào MS Access. Giáo trình “Các hệ
quản trị cơ sở dữ liệu"
Bước 2: Xác định các bảng dữ liệu cần thiết. Mỗi đối tượng thông tin sẽ hình
thành một bảng trong CSDL của chúng ta.
Bước 3: Sau khi đã xác định xong các bảng cần thiết, tiếp đến ta phải chỉ rõ
thông tin nào cần quản lý trong mỗi bảng, đó là xác định các trường. Mỗi loại
thông tin trong bảng gọi là trường. Mọi mẫu in trong cùng một bảng đều có
chung cấu trúc các trường. Ví dụ: Trong lý lịch khoa học cán bộ, những
trường (thông tin) cần quản lý là: “HỌ VÀ TÊN”, “CHUYÊN MÔN”, “HỌC
VỊ”, “HỌC HÀM”,...
Bước 4: Xác định các mối quan hệ giữa các bảng. Nhìn vào mỗi bảng dữ liệu

và xem xét dữ liệu trong bảng này liên hệ thế nào với dữ liệu trong bảng
khác.Thêm trướng hoặc tạo bảng mới để làm rõ mối quan hệ này. Đây là vấn
đề hết sức quan trọng, tạo được quan hệ tốt sẽ giúp chúng ta nhanh chóng truy
tìm tìm và kết xuất dữ liệu. Bước 5: Tinh chế, hiệu chỉnh lại thiết kế. Phân
tích lại thiết kế ban đầu để tim lỗi, tạo bảng dữ liệu và nhập vào vài bản ghi,
18


thử xem CSDL đó phản ánh thế nào với những yêu cầu truy xuất của chúng ta,
có rút được kết quả đúng từ những bảng dữ liệu đó không. Thực hiện các
chỉnh sửa thiết kế nếu thấy cần thiết.
1.3.3. Truy vấn
Sức mạnh thực sự của CSDL là khả năng tìm đúng và đầy đủ thông tin mà
chúng ta cần biết, trình bày dữ liệu sắp xếp theo ý muốn. Để đáp ứng yêu cầu
trên, Acces cung cấp một công cụ truy vấn cho phép đặt câu hỏi với dữ liệu
đang chứa bên trong các bảng trong CSDL.
Truy vấn là một công cụ cho phép đặt câu hỏi với dữ liệu trong bảng dữ
liệu trong CSDL. Loại truy vấn thông dụng nhất là truy vấn chọn (Select
Query ). Với kiểu truy vấn này chúng ta có thể xem xét dữ liệu trong các
bảng, thực hiện phân tích và chỉnh sửa trên dữ liệu đó, có thể xem thông tin từ
1 bảng hoặc có thể thêm nhiều trường từ nhiều bảng khác nhau.
Ví dụ:
Cho 2 bảng dữ liệu KHOHANG (MAHANG, TENHANG,
GIA)BANHANG(MAHANG, TENKHACH, SOLUONG, NGAYMUA). Hãy
hiển thị những khách hàng mua hàng trong tháng 7 bao gồm các thông tin:
MAHANG, TENHANG, GIA, TENKHACH. Sau khi thực hiện truy vấn, dữ
liệu thỏa mãn yêu cầu được rút ra và tập hợp vào một bảng kết qủa gọi là
Dynaset (Dynamic set). Dynaset cũng hoạt động như 1 bảng (Table) nhưng
nó không phải là bảng vfa kết quả khi hiển thị có thể cho phép sửa đổi. Một
loại bảng thể hiện kết quả truy vấn khác là


Snapshot, nó tương tự như

dynaset tuy nhiên không thể sửa đổi thông tin ( Như truy vấn Crosstab....).
Các loại truy vấn trong Access:


Select Query : Truy vấn chọn
19





Crosstab Query : Truy vấn tham khỏa chéo (Thể hiện dòng và cột)
Action Query : Truy vấn hành động gồm:
 Truy vấn tạo bảng (make table Query )
 Truy vấn nối (append Query )
 Truy vấn cập nhật ( Update Query )
 Truy vấn xóa dữ liệu ( Delete Query )
• SQL Query : Truy vấn được viết bởi ngôn ngữ SQL.
• Pass throught Query : Gởi các lệnh đến một CSDL SQL như Microsoft
SQL server.
1.4.

Ánh sáng

1.4.1. Độ sáng, màu sắc và độ bão hòa
Sự nhận biết ánh sáng của loài người với c(λ) được mô tả chung bằng thuật
ngữ độ sáng (brightness), màu sắc và độ bão hòa. Độ sáng (brightness) liên

quan đến độ sáng của ánh sáng. Màu sắc liên quan đến màu, chẳng hạn như
mà đỏ, màu cam hoặc màu mận chin (tía). Độ bão hòa đôi khi còn gọi là sắc
độ, liên quan đến mức độ tươi hoặc sẫm của màu.
Điều chỉnh độ báo hòa và độ sáng cho ảnh: đôi khi ảnh thu nhận được có
độ sáng quá cao hoặc quá thấp ảnh hưởng đến kết quả xử lý. Ví dụ như khi độ
sáng quá cao màu của nhiều vật thu nhận được qua webcam đều là màu trắng
trong khi màu thực sự của chúng không phải màu trắng. và khi độ sáng quá
thấp ta thường thu nhận được toàn màu đen. điều này ảnh hưởng lớn tới việc
phân biệt đối tượng theo màu sắc. chính vì vậy ta cần phải điều chỉnh lại độ
sáng của ảnh thu nhận được.

20


1.4.2. Biểu diễn ảnh đơn sắc
Với ảnh đen-trắng, ánh sáng c(λ) có thể được biểu diễn bởi một số I như
sau:

Trong đó: SBW(λ) là đặc tính phổ của cảm biến được sử dụng và k là hệ
số tỷ lệ xích (scaling constant). Vì sự cảm nhận độ sáng có tầm quan trọng
hàng đầu đối với ảnh đen trắng, nên S BW(λ) được chọn giống như hàm hiệu
suất ánh sáng tương đối. giá trị I thường được gọi là độ chói, cường độ hay
mức xám của ảnh đen trắng. vì I trong công thức trên biểu diễn công suất
trên đơn vị diện tích, nên nó bao giờ cũng không âm và hữu hạn, nghĩa là:
0≤ I≤ Imax
Trong đó Imax là giá trị lớn nhất mà I đạt được. Trong xử lý ảnh, I được
chia thang(scaled) sao cho nó nằm trong một phạm vi thuận lợi nào đó, ví
dụ 0≤ I≤1 hoặc 0≤ I≤ 255. Trong những trường hợp này 0 ứng với mức tối
nhất và 1 hoắc 255 ứng với mức sáng nhất. vì cách đặt mức thang này trên
đơn vị trắc quang (photometric) hoặc bức xạ (radiometric) cụ thể gắn với I

trở nên không quan trọng. Ảnh đen trắng, trong cảm nhận chỉ có một màu.
Vì vậy có khi gọi là ảnh đơn sắc (monochrome).

21


Chương 2. XỬ LÝ ẢNH VÀ CÁC PHƯƠNG PHÁP XỬ LÝ ẢNH CƠ
BẢN
Xử lý ảnh là một trong những mảng quan trọng nhất trong kỹ thuật thị giác
máy tính, là tiền đề cho nhiều nghiên cứu thuộc lĩnh vực này. Hai nhiệm vụ cơ
bản của quá trình xử lý ảnh là nâng cao chất lượng thông tin hình ảnh và xử lý
số liệu cung cấp cho các quá trình khác trong đó có việc ứng dụng thị giác vào
điều khiển.
Đã có rất nhiều công trình nghiên cứu tại nhiều quốc gia từ năm 1920 đến
nay về xử lý ảnh đã góp phần thúc đẩy tiến bộ trong lĩnh vực này lớn mạnh
không ngừng.
Quá trình bắt đầu từ việc thu nhận ảnh nguồn (từ các thiết bị thu nhận
ảnh dạng số hoặc tương tự) gửi đến máy tính. Dữ liệu ảnh được lưu trữ ở định
dạng phù hợp với quá trình xử lý. Người lập trình sẽ tác động các thuật toán
tương ứng lên dữ liệu ảnh nhằm thay đổi cấu trúc ảnh phù hơp với các mục
đích khác nhau. Trong nghành khoa học máy tính, xử lý ảnh là một dạng của
xử lý tín hiệu cho đầu vào là một ảnh hoặc các frame của phim ảnh. Đầu ra có
thể là một hình ảnh, hoặc tập hợp các ký tự hoặc các tham số liên quan tới
hình ảnh. Thường thì kỹ thuật xử lý ảnh có liên quan tới xử lý tín hiệu hai
chiều và được áp dụng bằng một chuẩn riêng về kỹ thuật xử lý ảnh cho nó.
Các khái niệm cơ bản để xử lý tín hiệu như, khái niệm về tích chập, các biến
đổi Fourier, biến đổi Laplace, các bộ lọc hữu hạn… Ngoài ra còn cần tới các
công cụ toán học như đại số tuyến tính, sác xuất, thống kê. Và một số kiến
thức cần thiết như Trí tuệ nhân tao, Mạng nơ ron nhân tạo cũng được đề cập
trong quá trình phân tích và nhận dạng ảnh.


22


2.1. Cơ bản về xử lý ảnh

2.1.1 Các giai đoạn của một quá trình xử lý ảnh
Để có thể hình dung cấu hình một hệ thống xử lý ảnh chuyên dụng hay một
hệ thống xử lý ảnh trong nghiên cứu, đào tạo, trước hết chúng ta hãy xem xét
các bước cần thiết trong xử lý ảnh.

Hình 2.1. các giai đoạn của một quá trình xử lý ảnh.


Thu nhận ảnh

Ảnh có thể thu nhận qua camera. Thường ảnh thu nhận qua camera là tín
hiệu tương tự (loại camera ống kiểu CCIR), nhưng cũng có thể là tín hiệu số
hoá (loại CCD - Charge Coupled Device). Ảnh cũng có thể thu nhận từ vệ tinh
qua các bộ cảm ứng hay ảnh, tranh được quét trên scanner. Sau đó được lưu
trữ trong máy tính. Gồm có 2 quá trình:
- Biến đổi năng lượng quang học sang năng lượng điện
- Biến đổi năng lượng điện sang các ma trận.


Xử lí trước
Quá trình xử lí trước thực ra bao gồm nhiều công đoạn nhỏ. Trước hết

là công việc tăng cường ảnh để nâng cao chất lượng ảnh. Do những nguyên
nhân khác nhau: có thể do chất lượng thiết bị thu nhận ảnh, do nguồn sáng hay

do nhiễu, ảnh có thể bị suy biến. Do vậy cần phải tăng cường và khôi phục lại
23


ảnh để làm nổi bật một số đặc tính chính của ảnh, hay làm cho ảnh gần giống
nhất với trạng thái gốc (trạng thái trước khi ảnh bị biến dạng). Nhằm các mục
đích phục vụ cho các bước tiếp theo.
Những mục đích riêng biệt có thể đặt ra cho quá trình xử lý trước là:
+ Thực hiện điều chỉnh độ chiếu sáng để khắc phục hậu quả của sự
chiếu sáng không đồng đều.
+ Giảm nhỏ thành phần nhiễu.
+ Cải thiện độ tương phản của ảnh màu do khuôn màu không tốt.
+ Hiệu chỉnh độ méo giá trị xám
+ Loại bỏ tính không đồng thể của ảnh gây nên từ tính không đồng bộ
của lớp nhạy quang của hệ thống thu nhận ảnh.
+ Chuẩn hóa độ lớn, dạng và màu.
+ Điều chỉnh bộ lọc để khuyếch đại các tần số với những thông tin
quan trọng được khuyếch đại và nén đi các tần số khác.


Phân đoạn

Là quá trình phân chia các đối tượng cần khảo sát ra khỏi phần nội dung
còn lại của ảnh, phân tách các đối tượng tiếp giáp nhau và phân tách những
đối tượng riêng biệt thành những đối tượng con. Một phương pháp phân đoạn
ảnh là sử dụng một ngưỡng giá trị xám để phân tách ảnh thành đối tượng và
nền (những điểm dưới ngưỡng xám thuộc về nền, ngược lại thuộc về đối
tượng).



Tách ra các đặc tính

24


Dựa trên các thông tin thu nhận được qua quá trình phân đoạn, kết hợp
với các kỹ thuật xử lý để đưa ra các đặc trưng, đối tượng ảnh cũng như các
thông tin cần thiết trong quá trình xử lý. Nhờ các đặc tính có được từ ảnh ta có
thể phân loại các đối tượng khác nhau của ảnh.
Phân loại ảnh
Thực hiện công việc sắp xếp một đối tượng vào một lớp đối tượng cho
trước. Để giải quyết bài toán này thì các đặc tính có ý nghĩa phải được lựa
chọn. Ta tìm thấy các đặc tính có ý nghĩa khi ta phân tích các mẫu được lựa
chọn từ những đối tượng khác nhau.

2.1.2. Mô tả ảnh


Pixel (Picture Element) : phần tử ảnh
Ảnh trong thực tế là một ảnh liên tục về không gian và về giá trị độ

sáng. Để có thể xử lý ảnh bằng máy tính cần thiết phải tiến hành số hoá ảnh.
Trong quá trình số hoá, người ta biến đổi tín hiệu liên tục sang tín hiệu rời rạc
thông qua quá trình lấy mẫu (rời rạc hóa về không gian) và lượng hoá thành
phần giá trị mà thể về nguyên tắc bằng mắt thường không phân biệt được hai
điểm kề nhau. Trong quá trình này, người ta sử dụng khái niệm Picture
element mà ta quen gọi hay viết là Pixel - phần tử ảnh. Mỗi Pixel bao gồm
một cặp tọa độ chỉ vị trí (x,y) và một mức xám nhất định. Mật độ Pixel trên
một ảnh số cho ta xác định được độ phân giải của ảnh. Ảnh có độ phân giải
25



×