Đọc hình ảnh từ thư mục python opencv
Xin chào mọi người, tôi là David Praise và trong hướng dẫn hôm nay, chúng ta sẽ tìm hiểu cách tải và hiển thị hình ảnh bằng OpenCV. Sau đó, chúng ta sẽ khám phá cách trích xuất các kích thước không gian về hình ảnh của chúng ta Show Nếu bạn chưa cài đặt OpenCV trên máy tính của mình, tôi đã phát hành một hướng dẫn trong đó tôi nói về những sai lầm mà tôi đã mắc phải khi cài đặt OpenCV trong quá khứ; Sau khi bạn đã tải xuống thư viện OpenCV và đã cài đặt các điều kiện tiên quyết của nó, chúng tôi sẽ xác thực xem môi trường của chúng tôi đã được thiết lập chính xác hay chưa bằng cách sử dụng các bước sau Chúng tôi sẽ đầu tiên
Cấu trúc dự ánTrước khi chúng tôi bắt đầu triển khai tập lệnh Python cho hướng dẫn này, trước tiên hãy xem lại cấu trúc thư mục dự án của chúng tôi → Nhấp vào đây để tải xuống mãCách đọc và hiển thị hình ảnh bằng OpenCV 1 2 3 4 5 6 7 $ cây . --dirsfirst . ├── đĩa mềm. jpg ├── load_image. py └── đầu ra. jpg
0 thư mục, 3 tệp Thư mục chứa
Bây giờ hãy triển khai tập lệnh Triển khai tập lệnh tải hình ảnh OpenCVĐầu tiên, tạo một tập lệnh mới, đặt tên là Cách đọc và hiển thị hình ảnh bằng OpenCV 1 2 3 4 5 6 7 8 9 # nhập các mô-đun cần thiết nhập argparse nhập cv2
# khởi tạo trình phân tích cú pháp đối số và thiết lập các đối số cần thiết trình phân tích cú pháp = argparse. Trình phân tích đối số() trình phân tích cú pháp. add_argument('-image', required=True, help='Path to the image') trình phân tích cú pháp. add_argument('--đầu ra', default='output.jpg', trợ giúp='Đường dẫn đến hình ảnh đầu ra') args = vars(trình phân tích cú pháp.parse_args()) Trong Dòng 2 – 3, chúng tôi đã nhập opencv để hoạt động với hình ảnh mẫu của mình; Sau đó, trên Dòng 6 – 9, chúng tôi chèn hai đối số của mình
Cách đọc và hiển thị hình ảnh bằng OpenCV 11 12 13 # tải hình ảnh từ vị trí của tệp và lấy # kích thước không gian như chiều rộng, chiều cao và #không có kênh hình ảnh = cv2. imread(args[']) Từ đó, chúng tôi sẽ hướng dẫn OpenCV đi và tìm hình ảnh Cách đọc và hiển thị hình ảnh bằng OpenCV 15 16 17 18 19 20 21 # lấy và hiển thị chiều rộng, chiều cao và #no của kênh # hình ảnh được tải hiện có, trong cửa sổ đầu cuối (iH, iW, iC) = image.hình dạng[. 3]
in(f"Chiều cao. {iH} pixel") in(f"Chiều rộng. {iW} pixel") in(f"Không có kênh nào. {iC}") Tiếp tục, để có được kích thước không gian của hình ảnh mà tôi đã đề cập trước đó, chúng ta có thể dễ dàng trích xuất thông tin này bằng cách gọi thuộc tính hình dạng Khi chương trình được thực thi, chúng tôi sẽ nhận được chiều cao và chiều rộng tính bằng pixel, bao gồm cả số lượng kênh. Cách đọc và hiển thị hình ảnh bằng OpenCV 23 24 # lưu hình ảnh trực tiếp vào thư mục hiện tại của bạn cv2. imwrite(args['], image) Chúng tôi cũng có thể lưu hình ảnh mới bằng tên mặc định, “đầu ra. jpg” đã được chỉ định trong đích đầu ra trên Dòng 8 Ghi chú. nó giống như hình ảnh được tải, nhưng OpenCV sẽ lưu nó với một tên khác trong thư mục làm việc hiện tại của chúng tôi. Bạn sẽ thấy nó trong thời gian thực vì nó được tạo khi chương trình đang chạy Cách đọc và hiển thị hình ảnh bằng OpenCV 26 27 28 29 30 # hiển thị hình ảnh và đợi bất kỳ phím nào được nhấn # sau đó xóa mọi cửa sổ gui đã tạo khỏi màn hình & bộ nhớ cv2. imshow('Hình ảnh', image) cv2. waitKey(0) cv2. destroyAllWindows() Cuối cùng, chúng tôi sẽ hiển thị hình ảnh bằng cách hiển thị ảnh của nhiều đĩa mềm trên màn hình nền; Hiển thị hình ảnh đã tải OpenCVBây giờ điều đó đã được triển khai, đã đến lúc đọc hình ảnh của chúng tôi từ đĩa bằng OpenCV Từ đó, kích hoạt thiết bị đầu cuối của bạn và thực hiện lệnh sau Cách đọc và hiển thị hình ảnh bằng OpenCV 1 2 3 4 5 $ python3 load_image. py --hình ảnh đĩa mềm. jpg $ $ Chiều rộng. 400 pixel $ Chiều cao. 600 pixel $ Không có của kênh. 3 Hình 1. Đang tải hình ảnh từ máy tính của bạn bằng OpenCV và cv2. imreadThưởngKhi bạn yêu cầu OpenCV thực hiện một tác vụ cụ thể, nó có thể không tìm thấy hình ảnh trong hầu hết các trường hợp Khi xây dựng các ứng dụng trong thế giới thực, bạn không nên tránh xây dựng các trường hợp cạnh để tránh toàn bộ ứng dụng của bạn gặp sự cố trong quá trình sản xuất. Cách đọc và hiển thị hình ảnh bằng OpenCV 1 2 3 4 5 6 $ python3 load_image. py --hình ảnh . /floy_disk. jpg $ $ Truy nguyên (hầu hết gần đây call last): $ Tệp "load_image. py", dòng 18, in <module> $ (iW, iH, iC) = image.hình dạng[. 3] $ Lỗi thuộc tính. 'NoneType' đối tượng có không attribute 'shape' Nếu chúng tôi đã chỉ định sai đường dẫn đến hình ảnh, chúng tôi sẽ gặp lỗi Không có hoặc Không có Loại, điều này có thể là do
Tất nhiên, chúng tôi không muốn điều này ảnh hưởng đến các thủ tục khác bên dưới những dòng này. Do đó, hãy kiểm tra tại chỗ mà không mất hàng giờ để gỡ lỗi những gì có thể đã sai Bản tóm tắtBài viết này đã giải thích cách sử dụng OpenCV để tải và hiển thị hình ảnh của bạn từ đĩa. sử dụng
Cuối cùng, tôi cũng đã đề cập đến một số lỗi phổ biến khi tải hình ảnh của bạn từ đĩa và cách xây dựng trường hợp biên xung quanh chức năng đó Cái gì tiếp theo?Bây giờ, những gì tiếp theo? . Cho đến lúc đó, hãy chia sẻ, thích video ở trên, bình luận và đăng ký |