Các Câu Hỏi Thường Gặp#

Câu Hỏi Chung#

Điều gì độc đáo ở CMUcam1?#

Theo truyền thống, cần các máy tính nhanh để chụp và xử lý các ảnh camera. Cũng cần viết phần mềm để thực hiện việc xử lý này. Vì điều này, thật khó để sử dụng thị giác làm một cảm biến trong các hệ thống đơn giản.

Hệ thống thị giác CMUcam1 sử dụng một vi điều khiển chi phí thấp nhanh để xử lý tất cả việc xử lý tốc độ cao của dữ liệu camera và chứa phần mềm để thực hiện các tác vụ thị giác đơn giản. Vì người dùng có thể chọn chỉ xuất ra thông tin cấp cao băng thông thấp từ hệ thống thị giác, như đối tượng đỏ ở vị trí X-Y, một bộ xử lý đơn giản như một vi điều khiển PIC có thể đọc dữ liệu này và điều khiển một robot nhỏ trong các tác vụ như đuổi theo một quả bóng màu. Hệ thống thị giác CMUcam1 giúp có thể bỏ qua độ phức tạp của việc giao tiếp camera và sử dụng thị giác giống như bất kỳ cảm biến nào khác (tức là sonar) thường được sử dụng trong các hệ thống robot.

Tốc độ khung hình của CMUcam1 là gì?#

Tốc độ khung hình nhanh nhất là 16.7 khung hình mỗi giây. Điều này có nghĩa là CMUcam1 có thể cho bạn biết vị trí của một đối tượng khoảng 17 lần mỗi giây. Sử dụng giao thức phần mềm serial, bạn có thể làm chậm điều này nếu muốn.

CMUcam1 hỗ trợ các tốc độ baud nào?#

Kể từ phiên bản firmware mới nhất (v1.12), CMUcam1 có thể giao tiếp ở các tốc độ baud 9600, 19200, 38400 hoặc 115200. Tốc độ baud được chọn thông qua các cài đặt jumper trên bo mạch.

Làm thế nào để nâng cấp firmware CMUcam1 của tôi?#

Nếu bạn hiện đang sử dụng firmware v1.11, không có lý do gì để nâng cấp trừ khi bạn cần hỗ trợ cho các tốc độ baud thấp hơn. Phiên bản 1.11 hỗ trợ 38400 và 115200 baud. Phiên bản 1.12 hỗ trợ các tốc độ baud đó và thêm hỗ trợ cho 9600 và 19200 baud. Để nâng cấp firmware của bạn, bạn sẽ cần lập trình lại bộ nhớ flash trong chip xử lý của bạn. Nếu bạn có một bộ lập trình, bạn có thể tải xuống phiên bản hiện tại từ trang Tải Xuống của chúng tôi và tự nạp lại bộ xử lý.

CMUcam1 có hoạt động ngoài trời không?#

CMUcam1 hoạt động ngoài trời nhưng không hoạt động dưới ánh nắng trực tiếp. Camera CMOS mà chúng tôi đang sử dụng không có bộ lọc IR chất lượng cao, và vì vậy ánh nắng mặt trời làm bão hòa các pixel đỏ và ảnh về cơ bản trở thành đơn sắc dưới ánh nắng trực tiếp. Có thể thêm một bộ lọc ngoài để cải thiện hoạt động ngoài trời. Chúng tôi có một bài viết ngắn cho bạn thấy các điều kiện chiếu sáng ảnh hưởng đến CMUcam1 như thế nào mà bạn có thể tải xuống tại đây.

Tôi có thể viết mã tùy chỉnh cho CMUcam1 không?#

Chắc chắn rồi. Để làm điều này, hãy hỏi chúng tôi mã nguồn firmware, tự đặt mua một môi trường lập trình C cho chip Ubicom và bắt tay vào làm. Khi chúng tôi gửi cho bạn mã nguồn firmware, chúng tôi cũng sẽ gửi cho bạn một bản tóm tắt về cách mã được cấu trúc và thông tin về môi trường lập trình mà chúng tôi sử dụng.

CMUcam1 tiêu thụ bao nhiêu điện năng?#

Toàn bộ hệ thống tiêu thụ khoảng 200 milliampe.

Trường nhìn của CMUcam1 là gì?#

Điều này tùy thuộc vào ống kính bạn lắp vào camera CMOS. Nếu bạn đặt mua camera CMOS như nó được bán tiêu chuẩn, bạn sẽ có khoảng 25 độ trường nhìn, tương đối hẹp. Tuy nhiên, bạn có thể đặt mua tùy chỉnh các ống kính góc rộng hơn khi bạn đặt mua camera CMOS của mình.

CMUcam1 sử dụng bộ xử lý nào?#

Mã xử lý ảnh của chúng tôi nằm trên một chip vi điều khiển từ Ubicom chạy ở 75 MHz, chip SX28AC. Chip này đọc tất cả các pixel từ camera CMOS qua một giao diện song song và thực hiện tất cả việc xử lý trong thời gian thực. Sau đó nó truyền kết quả tới vi điều khiển hoặc máy tính của bạn qua một giao diện cổng serial.

CMUcam1 sử dụng camera CMOS nào?#

Chúng tôi sử dụng một camera CMOS sử dụng camera CMOS trên chip OV6620 của OmniVision. Chúng tôi sử dụng một bo mạch camera CMOS mã số C3088 trên đó được lắp cảm biến, một đầu nối và một ống kính.

CMUcam1 có hoạt động với các camera CMOS khác không?#

Không. Hiện tại hệ thống phần cứng và phần mềm đã được thiết kế để hoạt động cụ thể với camera CMOS OV6620 của OmniVision. Hệ thống sẽ cần được thiết kế lại hoàn toàn để hoạt động với một camera khác.

Có nơi nào tôi có thể tìm thấy câu trả lời cho các câu hỏi bổ sung mà tôi có không?#

Có. Chúng tôi có một số thông tin về các câu hỏi kỹ thuật hơn trên trang này.

Tôi có thể tìm hiểu thêm về thị giác máy tính nói chung ở đâu?#

CMUcam1 thực hiện tác vụ thị giác máy tính đơn giản mà nó được thiết kế để thực hiện trong một gói nhỏ, không đắt tiền. Tuy nhiên, vấn đề thị giác máy tính tổng quát về việc cố gắng nhận dạng các đối tượng tùy ý trong các điều kiện tùy ý vẫn là một chủ đề nghiên cứu rất tích cực và còn rất xa mới đến gần một vấn đề được giải quyết.

Nếu bạn muốn tìm hiểu thêm về thị giác máy tính, bạn có thể muốn thử các liên kết này:

Câu Hỏi Kỹ Thuật#

Trình tự chính xác các bước được thực hiện khi bật nguồn bởi chế độ demo là gì?#

Đây là trình tự chính xác mà chế độ demo thực hiện khi bật nguồn:

  1. Đặt lại camera.

  2. Chờ 5 giây để việc tự động điều chỉnh các tham số camera ổn định.

  3. Gửi chuỗi thanh ghi camera: CR 18 32 19 32 chọn chế độ YCrCb và tắt auto gain.

  4. Thực thi lệnh TW.

Sau đó, camera sẽ bắt đầu điều khiển một servo hướng về khối trung tâm của màu được phát hiện bởi lệnh TW.

Trình tự chính xác các bước được thực hiện bởi lệnh "TW" là gì?#

Đây là trình tự chính xác mà lệnh TW thực hiện:

  1. Thu nhỏ cửa sổ xuống 1/4 kích thước (theo mỗi chiều) của cửa sổ hiện tại thành một cửa sổ mới được căn giữa tại tâm của cửa sổ hiện tại.

  2. Gọi get mean.

  3. Khôi phục cửa sổ về kích thước ảnh đầy đủ.

  4. Đặt giá trị max và min cho mỗi kênh màu bằng giá trị trung bình của kênh đó +/- 30.

Sau đó, camera sẽ bắt đầu truyền các gói tin Loại C, M, hoặc N.

Trong những điều kiện nào thì LED theo dõi sáng lên khi chế độ tự động được bật?#

LED sẽ sáng khi pixel_count >= 2 được trả về. pixel_count = (actual_pixel_count + 4) / 8 được trả về.

Nếu camera CMOS có độ phân giải 352 x 288 pixel, tại sao độ phân giải của CMUcam1 chỉ là 80 x 143?#

Vấn đề ở đây là cách các máy ảnh số màu hoạt động. Trong tất cả các máy ảnh số màu (ngay cả những cái rất đắt tiền - ngoại trừ một số dựa trên công nghệ rất tiên tiến) bạn chỉ nhận được một phép đo kênh màu mỗi vị trí pixel, điều này được gọi là lọc mosaic. Đây là một sơ đồ đẹp giúp giải thích điều này:

Mosaic

(Sơ đồ được cung cấp bởi Foveon, Inc.)

Vì vậy điều bạn có thể thấy là các pixel có thể được xem như được sắp xếp thành các nhóm bốn, trong đó có hai phép đo G và một phép đo R và một phép đo B mỗi nhóm. Nếu bạn loại bỏ một trong các phép đo G (điều mà chúng tôi làm), bạn thấy rằng độ phân giải thực của một camera 352x288 gần hơn với 176x144. Chúng tôi vận hành camera ở chế độ nửa độ phân giải, chế độ này bỏ qua mỗi khối 2x2 xen kẽ theo chiều ngang, cho bạn 88x144. Do các giới hạn bộ nhớ trong bộ xử lý, chúng tôi loại bỏ 8 cột theo chiều ngang và một hàng theo chiều dọc, vốn chứa một mẫu thử, cho bạn 80x143 làm độ phân giải cuối cùng.

Chỉ để cho bạn biết, các máy ảnh số tiêu chuẩn sử dụng các kỹ thuật nội suy phức tạp để cố gắng lấp đầy các giá trị màu bị thiếu tại mỗi pixel và cung cấp cho bạn thứ gì đó gần hơn một chút với độ phân giải đầy đủ của cảm biến.

Làm thế nào để lấy nét CMUcam1 một cách chính xác?#

Tất nhiên, cách tốt nhất để tiến hành lấy nét là chụp các bản dump khung hình bằng giao diện. Bạn có thể không có sẵn máy tính, hoặc bạn có thể đang sử dụng một CMUcam1 BotBall, vốn không có đủ độ phân giải ở tốc độ baud 9600 cố định của nó để điều này hoạt động tốt.

Trong trường hợp đó, có hai lựa chọn thay thế. Thứ nhất, bạn có thể thử đếm ren. Ống kính không được vặn hoàn toàn vào tại điểm lấy nét tốt nhất. Thay vào đó, có khoảng một khe hở 1 milimet của ren lộ ra. Về số lượng ren, đó là khoảng 2 ren lộ ra trong khe hở giữa ống kính và ngàm ống kính.

Lựa chọn thay thế thứ hai dựa trên ý tưởng rằng khi một ảnh sắc nét, các vùng tối là tối nhất và các vùng sáng là sáng nhất. Nói cách khác, khi độ tương phản là lớn nhất. Khi ảnh trở nên mất nét, thì các điểm cực trị mờ dần thành một phân bố cường độ đồng nhất hơn. Vì vậy, nếu bạn khởi động chế độ streaming, và sau đó gọi GM (Get Mean), bạn có thể lấy nét trong thời gian thực. Hãy nhìn vào độ lệch đỏ. Khi bạn lấy nét sắc nét vào một đối tượng có độ tương phản cao (chẳng hạn như một tờ giấy với nhiều chữ viết trên đó) ở khoảng cách mong muốn, sẽ có một đỉnh đáng chú ý trong độ lệch đỏ khi được lấy nét sắc nét nhất. Lưu ý rằng cách tiếp cận lấy nét này yêu cầu bạn giữ camera và mục tiêu khá cố định khi bạn xoay ống kính.