Tôi đã tạo một tập dữ liệu và lưu nó vào một tập tin TFRecord. Vấn đề là hình ảnh có kích thước khác nhau, vì vậy tôi muốn lưu kích thước cũng như với các hình ảnh. Vì vậy, tôi đã sử dụng TFRecordWriter và xác định các tính năng như:Cách đọc hình ảnh có kích thước khác nhau trong một tập tin TFRecord
example = tf.train.Example(features=tf.train.Features(feature={
'rows': _int64_feature(image.shape[0]),
'cols': _int64_feature(image.shape[1]),
'image_raw': _bytes_feature(image_raw)}))
Tôi mong rằng tôi có thể đọc và giải mã hình ảnh sử dụng TFRecordReader, nhưng vấn đề là tôi không thể nhận được giá trị của các hàng và cols từ tập tin, vì họ là tensors. Vì vậy, làm thế nào tôi phải làm gì để đọc kích thước động và định hình lại hình ảnh cho phù hợp. Cảm ơn guys
nó nêu ra lỗi "Tất cả các hình phải được xác định đầy đủ: 1". từ nhật ký, có vẻ như nó có liên quan đến chức năng "tf.train.shuffle_batch()". Tôi phải làm gì đây? –
lô cần biết hình dạng trong quá trình xây dựng biểu đồ (để biết số lượng bộ nhớ phân bổ cho hàng đợi), có lẽ sử dụng tf.image.resize_images trước tf.batch? Nếu bạn sử dụng bất kỳ thẻ con chuẩn nào, bạn sẽ cần phải đổi kích thước hình ảnh thành cùng kích thước, –
+ Tong Shen, vì bạn đang xây dựng một lô, hình ảnh phải có cùng kích thước. Nếu bạn biết kích thước này trước, có thể bạn có thể gọi một cái gì đó như 'image.set_shape ([32,32,3])' để xác định đầy đủ hình dạng. – bgshi