به بخش پرسش و پاسخ یادگیری عمیق خوش آمدید,
این نسخه آزمایشی سایت است.
لطفا به نکات زیر توجه کنید:
  • برای ارتباط با مدیران میتوانید از صفحه مدیران اقدام کنید.
  • سوال و جواب ها باید به زبان فارسی باشند. استفاده از زبان انگلیسی یا فینگلیش برای پاسخ دادن مجاز نیست.
  • لطفا بعد از پرسش سوال لینک سوال خود را در گرو تلگرام (Iran Deep Learning Group) معرفی کنید تا سریعتر به جواب برسید. برای دسترسی به آخرین لینک از منابع یادگیری استفاده کنید
  • لطفا بجای عکس از متن استفاده کنید. اگر متون طولانی هستند از سایت pastebin.com برای اپلود استفاده کرده و لینک حاصل را در سوال خود قرار دهید. برای قرار دادن تصویر ، از بخش ارسال تصویر ادیتور سایت استفاده کنید.
  • بعد از دریافت پاسخ، بهترین پاسخ را از طریق کلیک بر روی علامت تیک انتخاب کنید
  • اگر با خطا و یا مشکلی مواجه شدید از بخش تماس با ما در انتهای صفحه و یا ایمیل Coderx7@gmail.com موضوع را اطلاع دهید.

با تشکر

دسته بندی ها

0 امتیاز

با درود و احترام؛

اگربخواهیم هنگام بعد از خواندن تصاویر ورودی در تنسورفلو
training_data = np.empty(shape=(training_size, img_size))

import glob
i = 0
for filename in glob.glob('/folder name/image format'):

image = misc.imread(filename)
training_data[i] = image.reshape(-1)
i+=1

print(training_data[0].shape)

تصاویر را کراپ کنیم به شرط حفظ کانال رنگی تصویر ..از چه دستوری میتونیم درادامه خوندن تصاویر استفاده کنیم؟
سپاس

توسط (145 امتیاز)

1 پاسخ

+1 امتیاز

سلام
با این دستورات میتونی کارتو راه بندازی

tf.image.resize_image_with_crop_or_pad(image, target_height, target_width)
tf.image.central_crop(image, central_fraction)
tf.image.pad_to_bounding_box(image, offset_height, offset_width, target_height, target_width)
tf.image.crop_to_bounding_box(image, offset_height, offset_width, target_height, target_width)
tf.image.extract_glimpse(input, size, offsets, centered=None, normalized=None, uniform_noise=None, name=None)
tf.image.crop_and_resize(image, boxes, box_ind, crop_size, method=None, extrapolation_value=None, name=None)

توضیحات در
https://www.tensorflow.org/versions/r0.12/api_docs/python/image/

توسط (830 امتیاز)
من دستور زیر را که درمحیط تنسورفلو مینویسممثلا یک تصویر رو به سایز 128 در 128 میخوام تبدیل کنم:

import tensorflow as tf
import imageio
image =imageio.imread('D:/1.bmp')

tf.image.resize_image_with_crop_or_pad(image, 128, 128)

با خطای زیر روبه رو میشم:

'image' must be three-dimensional.

ممکنه راهنمایی بفرمایید؟
سلام
image بایستی تنسور سه بعدی باشه اگه تصویرتون تک لایه هستش با
tf.reshape
ابعاد رو به شکل 1* h*w  تبدیلش کنید

توضیحات تابع
    image: 3-D tensor of shape [height, width, channels]
    target_height: Target height.
    target_width: Target width.
سپاس

من خواندن تصاویر ورودی و کراپ کردن آنها رو به صورت زیر نوشتم:



import tensorflow as tf
import numpy as np
import imageio
import matplotlib.pyplot as plt
try:
    from scipy import misc
except ImportError:
    !pip install scipy
    from scipy import misc

    
training_size = 600
img_size = 640*480
train_images = np.empty(shape=(training_size, 640*480))  

import glob
i = 0
for filename in glob.glob('D:/CASIA/Train60/*.jpg'):
    image = imageio.imread(filename)
    image=tf.reshape(image,[284,384,1])
    image =tf.image.resize_image_with_crop_or_pad(image, 128, 128)
    train_images[i] = image.reshape(-1)
    i+=1

اما خطای زیر رو دارم:
Cannot reshape a tensor with 307200 elements to shape [284,384,1] (109056 elements) for 'Reshape' (op: 'Reshape') with input shapes: [480,640], [3]
...