|
Tài trợ cho PIC Vietnam |
Xử lý ảnh Các thuật toán xử lý ảnh dùng trong robot |
|
Ðiều Chỉnh | Xếp Bài |
|
21-03-2006, 08:38 PM | #1 |
Moderator
Tham gia ngày: Sep 2005
Bài gửi: 8
: |
Vấn đề thực hành xử lý ảnh
1. Giới thiệu
Để có thể áp dụng xử lý ảnh trong các ứng dụng thực tế, trước tiên phải có các khái niệm cơ bản và thực hành nhiều các giải thuật về xử lý ảnh. Bài này trình bày một số vấn đề về phần cứng và công cụ lập trình cơ bản để có thể thực hành xử lý ảnh trong điều khiện tối thiểu là một chiếc máy vi tính và ,nếu có thể, một USB camera. thay đổi nội dung bởi: chungtanlam, 14-03-2007 lúc 07:29 PM. |
29-03-2006, 11:59 PM | #2 |
Moderator
Tham gia ngày: Sep 2005
Bài gửi: 8
: |
2.2 Ảnh 24-bit color
*(RGB_Image + i), *(RGB_Image + i + 1) và *(RGB_Image + i + 2) Trong đó: i=(unsigned long)(row*3*W + 3*col); 2.3 Threshold Pseudocode như sau: for(row = 0; row < H; row++) { for(col = 0; col < W; col++) { if(pixel[row, col] < thresholdValue) pixel[row, col] = 0;// make pixel black else pixel(row, col) = 255;// make pixel white } } Bài viết này tạm dừng một thời gian dài, vì đang tập trung soạn một vài giáo trình khác. Xin lỗi các thành viên thay đổi nội dung bởi: chungtanlam, 14-03-2007 lúc 07:34 PM. |
29-03-2011, 11:43 AM | #3 |
Nhập môn đệ tử
Tham gia ngày: Mar 2011
Bài gửi: 2
: |
anh ơi anh có thể giải thich rõ cho em biết mục đích của tách ngưỡng tự động và cân bằng lược đỗ xám là gì hok?
|
01-08-2011, 05:01 PM | #4 |
Đệ tử 1 túi
Tham gia ngày: Jun 2011
Bài gửi: 22
: |
trong một tấm ảnh xám(ảnh trắng đen 8 bit) ,khi bạn muôn s tách một đối tượng trong ảnh đó ra ,cái bạn càn là một ngưỡng giá trị 8 bít(0->255) ,ví dụ tôi đưa ra một ngưỡng 128,và tôi dò trên ma trận ảnh,giá trị nào nhỏ hơn hoặc bằng giá trị này,tôi cho nó là đối tương(mức 1),còn những giá trị nào lớn hơn,tôi coi nó là nền(mức 0).sau khi làm điều này ta sẽ có một tấm ảnh mới ,gọi là ảnh nhị phân,chỉ có hai giá trị là nền và đối tượng(ảnh 1 bit)
ngưỡng này có ý nghĩa và tốt trên một tấm ảnh cụ thể,nếu xảy ra nhiểu,ngưỡng này sẽ thay đôi,và việc tách đối tượng bằng cách dùng ngưỡng cố định như vậy sẽ không còn chính xác,người ta mong muốn tìm ra một thuật toán có thể xác định ngưỡng một cách tự dộng để ứng với bất kỳ tấm ảnh nào việc tách đối tượng luôn chính xác. tuy nhiên xử lý ảnh là môn khoa học thực nghiệm,nó không có một quy luật cụ thể nào,cho tới nay thì vẫn chưa có một thuật toán phân ngưỡng nào hoàn toàn thật hiêu quả. thay vào đó người ta cố gắng tăng cường,phục hồi chất lượng tấm ảnh(tiền xử lý) để có thể có một tấm ảnh có chất lượng ổn định(khử nhòe,khử nhiễu,cân bằng....) còn việc cân bằng lược đồ xám là như thế này: thế nào là lược đồ xám:nó nói đến ảnh 8 bít,vì ảnh này là ảnh xám,mỗi giá trị của điểm ảnh là một giá trị thập phân nằm trong khoảng 0-255 tương ứng với việc từ màu trắng tới màu đen người ta chia ra 255 mức khác nhau,trên mối pixel(điểm ảnh) sẽ có 256 điểm màu nhỏ,nếu giá trị của điểm ảnh là 134 thì trong pixel đó sẽ có 134 ô có màu đen ý nghĩa của lược đồ xám:nó là một biểu đồ cho biết sự phân bố của giá trị điểm ảnh: ví dụ: tối có một tấm ảnh kích thước 10x10=100pixel với lược đồ xám như sau: số điểm ảnh có giá trị 0: 1 diểm ảnh ---------------------1: 4 điểm ảnh ---------------------2: 6 diểm ảnh ---------------------3: 0 điểm ảnh ---------------------------------- -------------------------------- ---------------------255: 18 điểm ảnh. tổng giá trị điểm ảnh là 100, như vậy nhìn trên lược đồ xám ta có thể biết sự phân bố mức xám trên tấm ảnh: ví dụ nếu số pixel phân bố nhiều ở mức xám 0-100:ta nói ảnh bị chói nếu số pixel phân bố nhiều ở mức xám 150-255:ta nói ảnh bị tối, việc cân bằng lược đồ xám là ta sẽ dùng các thuật toán để làm cho sự phân bố điểm ảnh trải đều trên các mức xám từ 0-255. xử lý ảnh có thể là xỷ lý trên ma trận điểm ảnh ,và cũng có thể xử lý trên sự phân bố điểm ảnh để tìm ra khoảng phân bố mức xám nào là phân bố của đối tượng. tất cả các thuật toán làm các việc trên,matlab đều hộ trợ.công việc của bạn là tìm hiểu ý nghĩa và cách xử dụng nó. mong giúp ích được cho bạn! |
13-04-2006, 12:12 AM | #5 |
Nhập môn đệ tử
Tham gia ngày: Mar 2006
Bài gửi: 7
: |
Thực tế với 1 camera (hoặc webcam) mà Windows nhận ra được (có driver) thì hoàn toàn có thể lập trình được mà không cần bộ SDK của camera. Chúng ta có thể lập trình thông qua Direct X. Tài liệu các bạn có thể tham khảo 1 cuốn (mình ko nhớ tên) của nhà xuất bản Minh Khai.
Mình hay sử dụng Image Acquisition Toolbox trong Matlab. Các bạn có thể tìm hiểu ở đây :http://www.mathworks.com/access/help...maq/index.html |
13-04-2006, 01:41 AM | #6 | |
Nhập môn đệ tử
Tham gia ngày: Mar 2006
Bài gửi: 6
: |
Trích:
|
|
13-04-2006, 06:02 PM | #7 |
Moderator
Tham gia ngày: Sep 2005
Bài gửi: 8
: |
Bạn nói đúng đó, tuy nhiên vấn đề ở đây là hình ảnh và tốc độ của Logitech 4000 lập trình với SDK thì rất chất lượng. Nếu dùng camera này với DiectX thì tốc độ có thể chậm hơn khoảng 20% (anh có thử nhưng không có thời gian đánh giá tìm nguyên nhân). Ngoài ra, các bạn cũng có thể dùng Image Acquisition Toolbox trong Matlab như volvo đã sử dụng, nhưng vì anh lập trình ứng dụng camera rồi sao đó điều khiển một cơ cấu chấp hành nào đó nữa, ví dụ một tay máy thông qua một USB-CAN controller hay thông qua RS232 và từ đó có thể đánh giá hệ thống từ lúc lúc capture một ảnh, xử lý ảnh cho đến khi hoàn tất một tác vụ điều khiển đó, nên anh thường hay dùng Visual C++6. Anh thấy nếu thực hành với hình ảnh đẹp và tốc độ cao và phù hợp với hướng phát triển của mình thi vẫn thấy thích hơn phải không. Nói chung, đây chỉ là gợi ý của anh để bài viết được đẹp và suông sẽ về nội dung lẫn thực hành về xử lý ảnh. Các bạn có thể tìm cách khác để thực hiện mục đích của mình tùy theo hoàn cảnh cụ thể.
thay đổi nội dung bởi: chungtanlam, 13-04-2006 lúc 06:44 PM. |
08-05-2006, 07:25 PM | #8 | |
Nhập môn đệ tử
Tham gia ngày: Mar 2006
Bài gửi: 7
: |
Trích:
|
|
10-06-2006, 06:10 PM | #9 |
Đệ tử 1 túi
Tham gia ngày: Jun 2006
Bài gửi: 20
: |
Bạn đã thử các tool xử lý và nhận dạng ảnh của LabVIEW chưa ? Rất mạnh và chuyên nghiệp đấy, tính mở của chúng cũng cao và rất thích hợp cho các bài toán công nghiêp.
|
28-09-2006, 12:49 AM | #10 |
Nhập môn đệ tử
Tham gia ngày: Sep 2006
Bài gửi: 7
: |
can giup do
Em da doc bai viet tren forum, va hien nay em cung dang lam de tai co su dung camera de capture hinh anh, hinh anh nay se truyen den 1 PC co su dung SDK kem theo, nhiem vu cua em la viet 1 chuong trinh bang VS C++ de lay dât cua Image cu the la toa do cac diem tren vat the. Tu giao dien viet bang VC++ data se duoc truyen den Robot controller. Anh co the giu Source code chuong trinh ma anh noi de em tham khao duoc khong, hoac pots len forum. Cam on nhieu
Email:kiethnt@yahoo.com |
18-06-2006, 12:43 PM | #11 | |
Moderator
Tham gia ngày: Sep 2005
Bài gửi: 8
: |
Trích:
|
|
28-09-2006, 08:12 PM | #12 |
Moderator
Tham gia ngày: Sep 2005
Bài gửi: 8
: |
Em co the tham khao trang nay de viet giao tiep Logitech camera dung Visual C++ va ap dung giai thuat xu ly anh co ban
http://www.boondog.com/tutorials/tri...dBinarize.html |
11-09-2007, 08:52 AM | #13 |
Nhập môn đệ tử
Tham gia ngày: Sep 2005
Bài gửi: 2
: |
Anh chungtanlam oi, anh còn mã nguồn của mấy cái này không ?
Làm ơn share cho em với. em đang nghiên cứu về xử lý ảnh số. Email của em: xuanhaidt2@yahoo.com. Cảm ơn anh trước nha! |
18-12-2017, 02:52 PM | #14 |
Nhập môn đệ tử
Tham gia ngày: Dec 2017
Bài gửi: 2
: |
xử lý điểm ảnh quan trọng nhất yếu tố nào hả các bác,
__________________
mua tour du lịch Hạ Long 3 ngày 2 đêmsẽ được miễn phí du lịch hạ long 1 ngàyvà giảm 20% du lịch cát bà 3 ngày 2 đêm |
|
|