﻿ 【code基础】skimage.transform.resize的一些理解 - 鸿网互联

# 【code基础】skimage.transform.resize的一些理解

skimage.transform.resize(order, preserve_range) order: 插值的方法0-5：0-最近邻；1-双线性； skimage在读使用io.imread读取灰度图像时（as_grey=True / as_gray=True）会做归一化处理数据类型转化为float64； 图

skimage.transform.resize(order, preserve_range)

order: 插值的方法0-5：0-最近邻；1-双线性；

preserve_range : bool, optional
Whether to keep the original range of values. Otherwise, the input
image is converted according to the conventions of `img_as_float`.

??https://scikit-image.org/docs/dev/api/skimage.transform.html?highlight=resize#skimage.transform.resize??

from skimage import io, transform, color
import numpy as np
print('skimage: ', skimage.__version__)
a=np.zeros((20, 20))
a[2:8, 1:3]=1
a[1:3, 4:9]=2
a[3:9, 6:8]=2
print(a)
print(a.shape)
print(a.dtype)
print(np.unique(a))
b = skimage.transform.resize(a,(10, 10),mode='constant', order=0, anti_aliasing=False, preserve_range=True)
print(b)
print(b.shape)
print(b.dtype)
print(np.unique(b))

print(label.shape) #(800, 800)
print(label.dtype)
print(np.unique(label))
lbl = skimage.transform.resize(label,(512, 512),mode='edge', order=0, anti_aliasing=False, preserve_range=True)
print(lbl.shape)
print(lbl.dtype)
print(np.unique(lbl))
label_show = np.zeros((512, 512, 3), dtype=np.uint8)
COLORS = [(0, 0, 0), (0, 255, 0), (0, 0, 255), (238, 18, 137), (162, 205, 90), (70, 130, 180), (238, 238, 0), (255, 69, 0), (205, 145, 158), (238, 92, 66), (144, 238, 144),
(124, 205, 124), (0, 229, 238), (151, 255, 255), (205, 190, 112)]
for i in range(1, 9):
label_show[lbl==i]=COLORS[i]
import cv2
cv2.imshow("label_img", label_show)
cv2.waitKey(1)

View Code

description：

anti_aliasingbool, optional
Whether to apply a Gaussian filter to smooth the image prior to downsampling. It is crucial to filter when downsampling the image to avoid aliasing artifacts. If not specified, it is set to True when downsampling an image whose data type is not bool.

??preserve_range 不起作用？？？？？??

1. ??踩坑：skimage中对图像做的归一化处理??；

2. ??skimage.transform.resize??；

3. ??skimage_github_issue??；

<