网站建设公司哪有给网站做seo的价格
《Keras 3 :具有类似 U-Net 架构的图像分割》
作者:fchollet
创建日期:2019/03/20
最后修改时间:2020/04/20
描述:在 Oxford Pets 数据集上从头开始训练的图像分割模型。
(i) 此示例使用 Keras 3
在 Colab 中查看 •
GitHub 源
下载数据
!!wget https://www.robots.ox.ac.uk/~vgg/data/pets/data/images.tar.gz
!!wget https://www.robots.ox.ac.uk/~vgg/data/pets/data/annotations.tar.gz
!
!curl -O https://thor.robots.ox.ac.uk/datasets/pets/images.tar.gz
!curl -O https://thor.robots.ox.ac.uk/datasets/pets/annotations.tar.gz
!
!tar -xf images.tar.gz
!tar -xf annotations.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 755M 100 755M 0 0 21.3M 0 0:00:35 0:00:35 --:--:-- 22.2M % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 18.2M 100 18.2M 0 0 7977k 0 0:00:02 0:00:02 --:--:-- 7974k
准备输入图像和目标分割掩码的路径
import osinput_dir = "images/"
target_dir = "annotations/trimaps/"
img_size = (160, 160)
num_classes = 3
batch_size = 32input_img_paths = sorted([os.path.join(input_dir, fname)for fname in os.listdir(input_dir)if fname.endswith(".jpg")]
)
target_img_paths = sorted([os.path.join(target_dir, fname)for fname in os.listdir(target_dir)if fname.endswith(".png") and not fname.startswith(".")]
)print("Number of samples:", len(input_img_paths))for input_path, target_path in zip(input_img_paths[:10], target_img_paths[:10]):print(input_path, "|", target_path)
Number of samples: 7390 images/Abyssinian_1.jpg | annotations/trimaps/Abyssinian_1.png images/Abyssinian_10.jpg | annotations/trimaps/Abyssinian_10.png images/Abyssinian_100.jpg | annotations/trimaps/Abyssinian_100.png images/Abyssinian_101.jpg | annotations/trimaps/Abyssinian_101.png images/Abyssinian_102.jpg | annotations/trimaps/Abyssinian_102.png images/Abyssinian_103.jpg | annotations/trimaps/Abyssinian_103.png images/Abyssinian_104.jpg | annotations/trimaps/Abyssinian_104.png images/Abyssinian_105.jpg | annotations/trimaps/Abyssinian_105.png images/Abyssinian_106.jpg | annotations/trimaps/Abyssinian_106.png images/Abyssinian_107.jpg | annotations/trimaps/Abyssinian_107.png
一个输入图像和相应的分割掩码是什么样的?
from IPython.display import Image, display
from keras.utils import load_img
from PIL import ImageOps# Display input image #7
display(Image(filename=input_img_paths[9]))# Display auto-contrast version of corresponding target (per-pixel categories)
img = ImageOps.autocontrast(load_img(target_img_paths[9]))
display(img)
准备数据集以加载和矢量化批量数据
import keras
import numpy as np
from tensorflow import data as tf_data
from tensorflow import image as tf_image
from tensorflow import io as tf_iodef get_dataset(batch_size,img_size,input_img_paths,target_img_paths,max_dataset_len=None,
):"""Returns a TF Dataset."""def load_img_masks(input_img_path, target_img_path):input_img = tf_io.read_file(input_img_path)input_img = tf_io.decode_png(input_img, channels=3)input_img = tf_image.