如何使用 scipy.misc.imresize 调整 Python 中的图像大小,使其与另一个指定图像的大小相匹配
How do I resize an image in Python using scipy.misc.imresize so that it matches the size of another specified image
对于我这里的代码,有两个图像称为 "org_content" 和 "output":
elif cp_mode == 'lum2':
output = args.output_lum2
org_content = args.org_content
org_content = imread(org_content).astype(float)/256
output = imread(output).astype(float)/256
org_content = rgb2luv(org_content)
org_content[:,:,0] = output.mean(2)
output = luv2rgb(org_content)
output[output<0] = 0
output[output>1]=1
imsave(output_a_name, output)
如果两张图片之间存在尺寸差异,我会收到错误消息:
Traceback (most recent call last):
File "lum_transfer.py", line 123, in <module>
org_content[:,:,0] = output.mean(2)
ValueError: could not broadcast input array from shape (666,1000) into shape (1024,1536)
我需要调整 "org_content" 的大小,使其与 "output" 的长度和宽度匹配。这是因为保留 "output" 的 size/quality 比保留 "org_content" 的 size/quality 更重要。
rgb2luv 和 luv2rgb 函数对于大小差异问题并不重要。
我尝试使用它来解决问题,但它仍然导致相同的错误消息:
org_content = scipy.misc.imresize(output, org_content.shape)
我也试过:
org_content = img_as_float(scipy.misc.imresize(output, org_content.shape))
那么我做错了什么,我该如何解决这个问题?
我的脚本中有以下库:
import numpy as np
import argparse
from skimage import io,transform,img_as_float
from skimage.io import imread,imsave
from numpy import eye
我的完整脚本可以在这里找到:https://gist.github.com/ProGamerGov/2e7a0fe7a5ef6e117dc0be81df243331
为了解决这个问题,我使用了:
org_content = skimage.transform.resize(org_content, output.shape)
这需要我添加:
import skimage
还有我的脚本。
对于我这里的代码,有两个图像称为 "org_content" 和 "output":
elif cp_mode == 'lum2':
output = args.output_lum2
org_content = args.org_content
org_content = imread(org_content).astype(float)/256
output = imread(output).astype(float)/256
org_content = rgb2luv(org_content)
org_content[:,:,0] = output.mean(2)
output = luv2rgb(org_content)
output[output<0] = 0
output[output>1]=1
imsave(output_a_name, output)
如果两张图片之间存在尺寸差异,我会收到错误消息:
Traceback (most recent call last):
File "lum_transfer.py", line 123, in <module>
org_content[:,:,0] = output.mean(2)
ValueError: could not broadcast input array from shape (666,1000) into shape (1024,1536)
我需要调整 "org_content" 的大小,使其与 "output" 的长度和宽度匹配。这是因为保留 "output" 的 size/quality 比保留 "org_content" 的 size/quality 更重要。
rgb2luv 和 luv2rgb 函数对于大小差异问题并不重要。
我尝试使用它来解决问题,但它仍然导致相同的错误消息:
org_content = scipy.misc.imresize(output, org_content.shape)
我也试过:
org_content = img_as_float(scipy.misc.imresize(output, org_content.shape))
那么我做错了什么,我该如何解决这个问题?
我的脚本中有以下库:
import numpy as np
import argparse
from skimage import io,transform,img_as_float
from skimage.io import imread,imsave
from numpy import eye
我的完整脚本可以在这里找到:https://gist.github.com/ProGamerGov/2e7a0fe7a5ef6e117dc0be81df243331
为了解决这个问题,我使用了:
org_content = skimage.transform.resize(org_content, output.shape)
这需要我添加:
import skimage
还有我的脚本。