当前位置:首页 » 高清图片 » python图片反显是什么意思
扩展阅读
一千米等于多少平方图片 2025-05-18 04:16:28
能在图片上写上字的软件 2025-05-18 04:10:35

python图片反显是什么意思

发布时间: 2022-03-11 19:02:39

① python图片上的代码是什么意思

-1 and 1是求真值,非零代表真,0代表假,结果是1,
d/100 %9 = 241/100 % 9 = 2.41 %9,这是求余数,答案是2。

② python编程,为什么会出现图片里的这种报错,格式没有问题啊

main是特殊函数。

if __name__ == '__main__':

③ 怎么用python显示一张图片

用python显示一张图片方法如下:

import matplotlib.pyplot as plt # plt 用于显示图片

import matplotlib.image as mpimg # mpimg 用于读取图片

import numpy as nplena = mpimg.imread('lena.png') # 读取和代码处于同一目录下的 lena.png# 此时 lena 就已经是一个 np.array 了,可以对它进行任意处理

lena.shape #(512, 512, 3)plt.imshow(lena) # 显示图片plt.axis('off') # 不显示坐标轴

plt.show()

④ 在python Image中可以用show()来显示图片,但是显示以后,下面的代码就不运行了,如何运行下面的代码

Image.show()函数是这个样子的,必须先关了图片程序才往下走。

不使用show,如imshow(BW)在 Matlab 7.0 中,二进制图像是一个逻辑类,仅包括 0 和 1 两个数值。像素 0 显示为黑色,像素 1 显示为白色。显示时,也可通过NOT(~)命令,对二进制图象进行取反,使数值 0 显示为白色;1 显示为黑色。

例如: imshow(~BW)

展资料:

不使用show函数来满足运行的需求:

import threading

import Image

class ThreadClass(threading.Thread):

def run(self):

im=Image.open('z.jpg')

im.show()

print (1)

t = ThreadClass()

t.start()

print (2)

a=input('End')

#===============================

图像的表示原理:

最基本的物理图像是根据矩形网格抽样原理从连续图像域中抽取二维灰度阵列(矩阵)得到的。也可以用长向量表示二维灰度矩阵,它是按列(或行)扫描灰度矩阵,把下一列(或行)的头和前一列(或行)的尾相接而成。

它们的线性可逆变换同样可以用来表示图像。图像的每一行由行程(具有同一灰度的邻近像元集合)序列所组成,因此也可以用行程长度编码(见图像编码)表示图像。

⑤ 怎么用python显示一张图片

在 python 中除了用 opencv,也可以用 matplotlib 和 PIL 这两个库操作图片。本人偏爱 matpoltlib,因为它的语法更像 matlab。
一、matplotlib
1. 显示图片
复制代码
import matplotlib.pyplot as plt # plt 用于显示图片
import matplotlib.image as mpimg # mpimg 用于读取图片
import numpy as np
lena = mpimg.imread('lena.png') # 读取和代码处于同一目录下的 lena.png
# 此时 lena 就已经是一个 np.array 了,可以对它进行任意处理
lena.shape #(512, 512, 3)
plt.imshow(lena) # 显示图片
plt.axis('off') # 不显示坐标轴
plt.show()
复制代码
2. 显示某个通道
复制代码
# 显示图片的第一个通道
lena_1 = lena[:,:,0]
plt.imshow('lena_1')
plt.show()
# 此时会发现显示的是热量图,不是我们预想的灰度图,可以添加 cmap 参数,有如下几种添加方法:
plt.imshow('lena_1', cmap='Greys_r')
plt.show()
img = plt.imshow('lena_1')
img.set_cmap('gray') # 'hot' 是热量图
plt.show()
复制代码
3. 将 RGB 转为灰度图
matplotlib 中没有合适的函数可以将 RGB 图转换为灰度图,可以根据公式自定义一个:
复制代码
def rgb2gray(rgb):
return np.dot(rgb[...,:3], [0.299, 0.587, 0.114])
gray = rgb2gray(lena)
# 也可以用 plt.imshow(gray, cmap = plt.get_cmap('gray'))
plt.imshow(gray, cmap='Greys_r')
plt.axis('off')
plt.show()
复制代码
4. 对图像进行放缩
这里要用到 scipy
复制代码
from scipy import misc
lena_new_sz = misc.imresize(lena, 0.5) # 第二个参数如果是整数,则为百分比,如果是tuple,则为输出图像的尺寸
plt.imshow(lena_new_sz)
plt.axis('off')
plt.show()
复制代码
5. 保存图像
5.1 保存 matplotlib 画出的图像
该方法适用于保存任何 matplotlib 画出的图像,相当于一个 screencapture。
plt.imshow(lena_new_sz)
plt.axis('off')
plt.savefig('lena_new_sz.png')
5.2 将 array 保存为图像
from scipy import misc
misc.imsave('lena_new_sz.png', lena_new_sz)
5.3 直接保存 array
读取之后还是可以按照前面显示数组的方法对图像进行显示,这种方法完全不会对图像质量造成损失
np.save('lena_new_sz', lena_new_sz) # 会在保存的名字后面自动加上.npy
img = np.load('lena_new_sz.npy') # 读取前面保存的数组
二、PIL
1. 显示图片
from PIL import Image
im = Image.open('lena.png')
im.show()
2. 将 PIL Image 图片转换为 numpy 数组
im_array = np.array(im)
# 也可以用 np.asarray(im) 区别是 np.array() 是深拷贝,np.asarray() 是浅拷贝
3. 保存 PIL 图片
直接调用 Image 类的 save 方法
from PIL import Image
I = Image.open('lena.png')
I.save('new_lena.png')
4. 将 numpy 数组转换为 PIL 图片
这里采用 matplotlib.image 读入图片数组,注意这里读入的数组是 float32 型的,范围是 0-1,而 PIL.Image 数据是 uinit8 型的,范围是0-255,所以要进行转换:
import matplotlib.image as mpimg
from PIL import Image
lena = mpimg.imread('lena.png') # 这里读入的数据是 float32 型的,范围是0-1
im = Image.fromarray(np.uinit8(lena*255))
im.show()
5. RGB 转换为灰度图
from PIL import Image
I = Image.open('lena.png')
I.show()
L = I.convert('L')
L.show()

⑥ 怎么样在python中让最后画出来的图翻转90度

importImage
importos
importglob

dir="f:mobile"
#取出指定文件
file=glob.glob(os.path.join(dir,'xxx.JPG'))

#打开图片
img=Image.open(file)

#显示图片
img.show()
printimg.format,img.size,img.mode
print"rotatingimage....."
im=img.rotate(90)
im.save(image)

我不知道你怎么画的,但旋转请参考以上代码

⑦ 为什么Python GUI总是不显示图片

把文件存为 PYW而不是PY 这样系统自动使用PYTHONW.EXE 而不是python.exe调用,没有黑窗口了

⑧ python中用Graphics Image 导入图片时出现<graphics.Image instance a t0x01B901C0 >是什么意思

应该是
>>> class b:
... pass
>>> print b()
<__main__.b instance at 0x01A6DF58>
如果直接print 一个类的实例的话,就会打印出<类的来源 类型 [属性] 地址>
你这应该是库里面有一句print语句,不影响。如果想去掉,找到它,注释掉。

⑨ 为什么python这个代码写出来的图片不显示

传入的 C:xxx 是目录,且存在?且下面有文件么?
Import os.path
对目录进行下判断吧: os.path.isdir
文件路径的拼装用os.path.join
读文件不用while,
for line in f:
print line

⑩ python 读取图片 结果是乱码

如果你要是想显示为16进制的话,自己可以转化一下:


importbinascii
printbinascii.b2a_hex(a)

或者更加友好些


count=1
foriina:
ifcount%16!=0:
print'%s'%binascii.b2a_hex(a),
else:
print''
count+=1

这样就能打印成“不是乱码”了。

不能理解的问题:显示为乱码这有什么关系吗?