এমএল কমিউনিটি দিবস 9 নভেম্বর! TensorFlow, Jax থেকে আপডেটের জন্য আমাদের সাথে যোগ দিন, এবং আরও আরও জানুন

টেনসরফ্লো অ্যাডনস ইমেজ: অপারেশনস

টেনসরফ্লো.আর.জে দেখুন গিটহাবের উত্স দেখুন নোটবুক ডাউনলোড করুন

ওভারভিউ

এই নোটবুকটি টেনসরফ্লো অ্যাডসনে কিছু চিত্র ক্রিয়াকলাপ কীভাবে ব্যবহার করতে হবে তা প্রদর্শন করবে।

আপনি উদাহরণস্বরূপ চিত্রটি অপারেশনগুলির তালিকাটি আবরণ করবেন:

সেটআপ

pip install -q -U tensorflow-addons
import tensorflow as tf
import numpy as np
import tensorflow_addons as tfa
import matplotlib.pyplot as plt

চিত্রগুলি প্রস্তুত এবং পরিদর্শন করুন

ছবি ডাউনলোড করুন

img_path = tf.keras.utils.get_file('tensorflow.png','https://tensorflow.org/images/tf_logo.png')
Downloading data from https://tensorflow.org/images/tf_logo.png
40960/39781 [==============================] - 0s 3us/step

ছবিগুলি পরীক্ষা করুন

টেনসরফ্লো আইকন

img_raw = tf.io.read_file(img_path)
img = tf.io.decode_image(img_raw)
img = tf.image.convert_image_dtype(img, tf.float32)
img = tf.image.resize(img, [500,500])

plt.title("TensorFlow Logo with shape {}".format(img.shape))
_ = plt.imshow(img)

পিএনজি

একটি কালো এবং সাদা সংস্করণ করুন

bw_img = 1.0 - tf.image.rgb_to_grayscale(img)

plt.title("Mask image with shape {}".format(bw_img.shape))
_ = plt.imshow(bw_img[...,0], cmap='gray')

পিএনজি

Tfa.image নিয়ে খেলুন

ফিল্টারিং মানে

গড় ফিল্টারিং একটি ফিল্টারিং কৌশল, যা প্রায়শই কোনও চিত্র বা সিগন্যাল থেকে শব্দকে সরাতে ব্যবহৃত হয়। চিত্রটি পিক্সেল দিয়ে পিক্সেল দিয়ে চালানো এবং প্রতিবেশী পিক্সেলের গড় মানগুলির সাথে প্রতিস্থাপনের ধারণা idea

mean = tfa.image.mean_filter2d(img, filter_shape=11)
_ = plt.imshow(mean)

পিএনজি

ঘুরান

এই অপারেশন প্রদত্ত চিত্রটি ব্যবহারকারীর দ্বারা কোণ (রেডিয়ানগুলিতে) ইনপুট দ্বারা আবর্তিত করে।

rotate = tfa.image.rotate(img, tf.constant(np.pi/8))
_ = plt.imshow(rotate)

পিএনজি

রূপান্তর

এই অপারেশনটি প্রদত্ত চিত্রটিকে ব্যবহারকারীর দ্বারা প্রদত্ত ট্রান্সফর্ম ভেক্টরের ভিত্তিতে রূপান্তর করে।

transform = tfa.image.transform(img, [1.0, 1.0, -250, 0.0, 1.0, 0.0, 0.0, 0.0])
_ = plt.imshow(transform)

পিএনজি

YIQ এ র্যান্ডম এইচএসভি

এই অপারেশনটি প্রদত্ত আরজিবি চিত্রের রঙের স্কেলটিকে ওয়াইআইকিউতে পরিবর্তন করে কিন্তু এখানে ডেল্টা হিউ এবং স্যাচুরেশন মানগুলি প্রদত্ত পরিসর থেকে এলোমেলোভাবে বাছাই করা হয়।

delta = 0.5
lower_saturation = 0.1
upper_saturation = 0.9
lower_value = 0.2
upper_value = 0.8
rand_hsvinyiq = tfa.image.random_hsv_in_yiq(img, delta, lower_saturation, upper_saturation, lower_value, upper_value)
_ = plt.imshow(rand_hsvinyiq)

পিএনজি

YIQ এ এইচএসভি সামঞ্জস্য করুন

এই অপারেশনটি প্রদত্ত আরজিবি চিত্রের রঙের স্কেলটিকে ওয়াইআইকিউতে পরিবর্তন করে কিন্তু এখানে এলোমেলোভাবে বেছে নেওয়ার পরিবর্তে, ডেল্টা হিউ এবং স্যাচুরেশন মানগুলি ব্যবহারকারীর রূপ দেয়।

delta = 0.5
saturation = 0.3
value = 0.6
adj_hsvinyiq = tfa.image.adjust_hsv_in_yiq(img, delta, saturation, value)
_ = plt.imshow(adj_hsvinyiq)

পিএনজি

ঘন ইমেজ ওয়ার্প

এই অপারেশনটি অফসেট ভেক্টরের প্রবাহ ক্ষেত্র দ্বারা নির্দিষ্ট কোনও চিত্রের অ-লিনিয়ার ওয়ার্পের জন্য (উদাহরণস্বরূপ এখানে এলোমেলো মান ব্যবহৃত হয়)।

input_img = tf.image.convert_image_dtype(tf.expand_dims(img, 0), tf.dtypes.float32)

flow_shape = [1, input_img.shape[1], input_img.shape[2], 2]
init_flows = np.float32(np.random.normal(size=flow_shape) * 2.0)
dense_img_warp = tfa.image.dense_image_warp(input_img, init_flows)
dense_img_warp = tf.squeeze(dense_img_warp, 0)
_ = plt.imshow(dense_img_warp)

পিএনজি

ইউক্লিডিয়ান দূরত্বের রূপান্তর

এই অপারেশনটি অগ্রভাগের পিক্সেল থেকে ব্যাকগ্রাউন্ডে ইউক্লিডিয়ান দূরত্বের সাথে পিক্সেলের মান আপডেট করে।

  • দ্রষ্টব্য: এটি কেবল বাইনারি চিত্র নেয় এবং রূপান্তরিত চিত্রের ফলাফল। যদি কোনও আলাদা চিত্র দেওয়া হয় তবে এটি একক মান সহ একটি চিত্রে ফলাফল দেয়
gray = tf.image.convert_image_dtype(bw_img,tf.uint8)
# The op expects a batch of images, so add a batch dimension
gray = tf.expand_dims(gray, 0)
eucid = tfa.image.euclidean_dist_transform(gray)
eucid = tf.squeeze(eucid, (0, -1))
_ = plt.imshow(eucid, cmap='gray')

পিএনজি