Một mạng nơ ron tích chập có thể lấy làm hình ảnh đầu vào có kích thước khác nhau không?


10

Tôi đang làm việc trên một mạng chập để nhận dạng hình ảnh và tôi đã tự hỏi liệu tôi có thể nhập hình ảnh có kích thước khác nhau không (mặc dù không hoàn toàn khác nhau).

Về dự án này: https://github.com/harvardnlp/im2markup

Họ nói:

and group images of similar sizes to facilitate batching

Vì vậy, ngay cả sau khi tiền xử lý, hình ảnh vẫn có kích thước khác nhau, điều này hợp lý vì chúng sẽ không cắt bỏ một phần công thức.

Có bất kỳ vấn đề trong việc sử dụng kích thước khác nhau? Nếu có, tôi nên tiếp cận vấn đề này như thế nào (vì các công thức sẽ không phù hợp với cùng kích thước hình ảnh)?

Bất kỳ đầu vào sẽ được nhiều đánh giá cao

Câu trả lời:


2

Có bất kỳ vấn đề trong việc sử dụng kích thước khác nhau? Nếu có, tôi nên tiếp cận vấn đề này như thế nào (vì các công thức sẽ không phù hợp với cùng kích thước hình ảnh)?

Nó phụ thuộc vào kiến ​​trúc của mạng lưới thần kinh. Một số kiến ​​trúc cho rằng tất cả các hình ảnh có cùng kích thước, khác (như im2markup) không đưa ra giả định như vậy. Thực tế là im2markup cho phép hình ảnh có độ rộng khác nhau không mang lại bất kỳ vấn đề nào tôi tin, vì chúng sử dụng RNN quét qua đầu ra của lớp chập.

nhập mô tả hình ảnh ở đây

nhóm hình ảnh có kích thước tương tự để tạo điều kiện cho việc trộn

Đó thường là để tăng tốc mọi thứ bằng cách tránh thêm quá nhiều phần đệm.


2

Bạn đã xem xét đơn giản là nhân rộng các hình ảnh trong giai đoạn tiền xử lý? Theo trực giác, một người đối diện với một hình ảnh được chia tỷ lệ sẽ vẫn có thể nhận ra các tính năng và đối tượng tương tự, và không có lý do rõ ràng tại sao một CNN sẽ không thể làm điều tương tự trên một hình ảnh được chia tỷ lệ.

Tôi nghĩ rằng việc thu nhỏ các hình ảnh có cùng kích thước có thể dễ dàng hơn so với việc cố gắng tạo ra một mạng chập xử lý các hình ảnh có kích thước khác nhau, mà tôi nghĩ sẽ ở trên vùng đất 'nghiên cứu ban đầu'. Bạn chắc chắn có thể làm cho các lớp đối lưu của một mạng lưới xử lý hình ảnh có kích thước bất kỳ, mà không cần đào tạo lại. Tuy nhiên, đầu ra của một mạng lưới thông thường sẽ là một loại phân loại và điều này có thể sẽ hoạt động kém hơn, nếu bạn cung cấp các đầu vào có kích thước khác nhau, tôi sẽ tưởng tượng.

Một cách tiếp cận khác là chỉ đệm các hình ảnh với số không. Nhưng hãy tưởng tượng bằng trực giác bạn đang nhìn vào một bức ảnh nhỏ, được viền viền đen hoặc bạn có thể phóng to, để nó có một vòng cung hợp lý trong trường hình ảnh của bạn. Bạn sẽ làm gì Cái nào dễ nhìn hơn?


không chia tỷ lệ làm giảm chất lượng của hình ảnh giới thiệu các tính năng lỗi và biến dạng, nếu hình ảnh có độ phân giải thấp thì tỷ lệ sẽ làm giảm chất lượng hình ảnh đến mức mà ngay cả con người cũng có thể nhận ra dễ dàng nhưng hình ảnh không bị che khuất có thể nhận ra.
Vikram Bhat

1
Bạn có một ví dụ về một hình ảnh có thể nhận ra đối với con người, trừ khi bạn áp dụng tỷ lệ, và sau đó trở nên không thể nhận ra?
Hugh Perkins

Tôi cũng đang tự hỏi điều này. Khi cố gắng sử dụng một mô hình được đào tạo hiện có từ máy ảnh, tôi nghĩ rằng tôi có thể mở rộng hình ảnh lên để phù hợp với giao diện InceptionV3 (299x299 từ 32x32 -> CIFAR10). Tôi nghĩ rằng tỉ lệ mất chất lượng. Nhưng tôi nghĩ cách làm phù hợp sẽ là loại trừ FC đầu ra và chỉ định hình dạng đầu vào là 32x32. Tôi nghĩ rằng điều này sẽ yêu cầu đào tạo lại, vì trọng lượng của lớp đầu vào là ngẫu nhiên.
Joey Carson

Thu nhỏ làm giảm chất lượng nhưng giúp khái quát hóa: có nhiều bài báo ghi nhận mức tăng đáng chú ý trong nhận dạng khi làm mờ Gauss trước khi đào tạo. Theo trực giác, bạn có nhiều mẫu đầu vào khác nhau giống với một hình ảnh "mờ" duy nhất, do đó làm cho phân loại mạnh mẽ hơn.
Matthieu
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.