当前位置: 首页 > news >正文

一级做a免费观看视频网站怎么样建网站

一级做a免费观看视频网站,怎么样建网站,wordpress 收录 改版,嘉兴seo网站推广1、读取图像信息 查看图像信息 读取同一文件夹下的文件 可加 ./可不加 rom PIL import Image img Image.open(image.jpg) # 打开图像文件(注意:是去掉文件头的纯数据) print(img.format) # 图像格式(如BMP PNG JPEG 等) print(img.size) # 图像大小(…

1、读取图像信息

查看图像信息
读取同一文件夹下的文件 可加 ./可不加

rom PIL import Image
img = Image.open('image.jpg')  # 打开图像文件(注意:是去掉文件头的纯数据)	
print(img.format)          # 图像格式(如BMP PNG JPEG 等) 
print(img.size)            # 图像大小(宽,高) 注意 省略了通道 (w,h)
print(img.mode)            # RGB      图像颜色模式(L:灰度图 RGB:真彩色 RGBA:添加了透明通道)
img.show()                 # 显示图像

运行结果
运行结果
linux里面png格式比较多,网络传输里面压缩格式 JPEG格式比较多,BMP无损格式

2、修改图像颜色

PNG有透明通道,jpeg就没有,不能变成 透明半透明;变成灰度图 减少信息,只留轮廓,去掉颜色信息
RGB一个像素点的位数占24位,L一个像素点占8位

from PIL import Image
img = Image.open('image.jpg')	
img = img.convert('L')  #转换为灰度黑白图像 -> 只保留能识别轮廓的明暗对比,# 大幅减少了数据( 24位深 RGB 转8位 L)
img.show()

3、图像缩放

resize不会在原来的图像上修改,改完之后 需要 有变量存储
等比例放大缩小:等比例,注意需要是整数,所以 需要强制类型转换

from PIL import Image
img = Image.open('image.jpg')
print(img.size)
img = img.resize((32, 24),Image.ANTIALIAS)   #修改图像的宽高尺寸
print(img.size)
img.show()# 等比例缩放
img = img.resize(int(img.size[0]/4),int(img.size[1]/4)) 
print(img.size)
img.show()

4、图像旋转 / 翻转

图像旋转

import numpy as np
from PIL import Image
img = Image.open('image.jpg')
img = img.rotate(90)  #逆时针旋转90度
img.show();

图像翻转

import numpy as np
from PIL import Image
img = Image.open('image.jpg')	
img = img.transpose(Image.FLIP_LEFT_RIGHT) #左右翻转
img.show();

5、图像转numpy(数组)

图像就是 一个矩阵,有很多像素点,每个点表示颜色,8位图 就有256种(0-255)表示颜色,色彩丰富 位数越多
一共3个维度,最后一维表示几张图叠加 RGB就是 红绿蓝 RGBA再加一个透明半透明选项(255是不透明)

灰度图就只有 高和宽,只有一个通道,是一个 二维的数组

/ 256 把值都整到0-1之间(到同一个量级,不同的信息可以做相关的运算) 归一化

import numpy as np
from PIL import Image
img = Image.open('image.jpg')
obj= np.array(img)  # 转换图像为 numpy
print(obj.shape)    # 形状:  RGB三通道 每个通道为240行*320列矩阵 来表示本通道的灰度(明暗对比) 
print(obj[0][1])    # 像素内容: 0行1列的像素点对应的R G B值img = img.convert('L') # 转换为灰度黑白图像 -> 只保留能识别轮廓的明暗对比,大幅减少了数据( 24位深 RGB 转8位 L)
obj = np.asarray(img, dtype='float64')/256  # 转换图像为numpy ( 除以256是为了归一化,# 使值都在0~1间,float64是指定数据类型保持精度)# array和asarray类似,只是array会copy该对象,而asarray 必要时才copy                     
print(obj.shape)    # 形状: 只保留了1通道的灰度
print(obj[0][1])    # 像素内容:0行1列的像素点对应的灰度值 (因前面除以了256 归一化后为0~1间的数)

运行结果
运行结果

6、查看图像数据

{0:3d} 的意思是将第一个参数(索引为 0 的参数)格式化为一个占据 3 个字符宽度的整数,如果不足 3 个字符宽度则在左侧填充空格

通过numpy可以查看图片矩阵的数字

import numpy as np
from PIL import Image
img = Image.open('8.bmp')
img = img.convert('L') # 转为灰度图像(1像素 占8位)
obj= np.array(img)  # 图像转为numpy
print(obj.shape)    # (28 28)  图像矩阵形状为 28行 *28列# 输出图像数据 -> 8字 的像素矩阵
for i in range(obj.shape[0]):for j in range(obj.shape[1]):print('{0:3d} '.format(obj[i][j]),end="")  # i:图像行号 j:图像列号 中间间隔“ ”  print('E')                                   # 每行末尾加一个E

7、转为 指定格式的图像存储

把图片改完之后不能直接存,先换成数组(去掉图片信息),再变成图像存储(再加上图片信息,就变成不同的格式)
第二种方式 pip install scipy 安装对应库

# 方法一:	
import numpy as np
from PIL import Imageimg = Image.open('1.png')
print(img.format,img.size,img.mode)img = img.convert('RGB')
img = img.resize((320, 240),Image.ANTIALIAS)obj= np.array(img)
img = Image.fromarray(obj)
img.save('1.jpg')     # 把n维数组存为图像(可根据后缀,自动转换为bmp png jpg等存储)img = Image.open('1.jpg')
print(img.format,img.size,img.mode)# 方法二:
import numpy as np
from PIL import Image
from scipy import misc
img = Image.open('8.bmp')
img = img.convert('L')
obj= np.array(img)
misc.imsave('8_8bit.png', obj) # 把n维数组存为图像(可根据后缀,自动转换为bmp png jpg等存储)

8、图像拼接

import os
from PIL import Image
import numpy as npdef mergePic(files):baseimg=Image.open(files[0])basemat=np.atleast_2d(baseimg) # 转换图像为 至少两维的numpyfor file in files[1:]:  # 遍历除第一个外的numpyim=Image.open(file)mat=np.atleast_2d(im)basemat=np.append(basemat,mat,axis=1) # 横向追加图像(axis=0时为纵向)img=Image.fromarray(basemat)img.save('merge.png')path = "./pic/" # 注:该路径下的图像,必须是相同格式,尺寸的图像
images = [] # 先存储所有的图像的名称
for root, dirs, files in os.walk(path):for f in files :images.append(path+f)
print(images,len(images))mergePic(images)

basemat=np.append(basemat,mat,axis=1)使用 NumPy 的 np.append() 函数将当前遍历到的图片数组沿着横轴(axis=1)方向追加到基础图像数组 basemat 后面,生成新的基础图像数组,并将其赋值给 basemat 变量。

img=Image.fromarray(basemat)使用 PIL 库的 Image.fromarray() 方法将 NumPy 数组 basemat 转换为图像对象,并将其赋值给 img 变量

images.append(path+f)将每个文件的完整路径添加到 images 列表中


文章转载自:
http://dinncotyke.bpmz.cn
http://dinncopararescue.bpmz.cn
http://dinncoechoplex.bpmz.cn
http://dinncocutaway.bpmz.cn
http://dinncostuddingsail.bpmz.cn
http://dinncohen.bpmz.cn
http://dinncotelanthropus.bpmz.cn
http://dinncofaker.bpmz.cn
http://dinncorapport.bpmz.cn
http://dinncoglial.bpmz.cn
http://dinncominster.bpmz.cn
http://dinncotug.bpmz.cn
http://dinncobozzetto.bpmz.cn
http://dinncoquest.bpmz.cn
http://dinncoanadiplosis.bpmz.cn
http://dinncoepulosis.bpmz.cn
http://dinncoascending.bpmz.cn
http://dinncopolyglottal.bpmz.cn
http://dinncomillenary.bpmz.cn
http://dinncoabram.bpmz.cn
http://dinncostatewide.bpmz.cn
http://dinncowaspie.bpmz.cn
http://dinncosharefarmer.bpmz.cn
http://dinncovizor.bpmz.cn
http://dinncostapelia.bpmz.cn
http://dinncoscrimmage.bpmz.cn
http://dinncoprovident.bpmz.cn
http://dinncogalipot.bpmz.cn
http://dinncocosmogenic.bpmz.cn
http://dinncotango.bpmz.cn
http://dinncoimprovise.bpmz.cn
http://dinncoteratosis.bpmz.cn
http://dinncotsarevitch.bpmz.cn
http://dinncoobsequious.bpmz.cn
http://dinncooverrespond.bpmz.cn
http://dinncoferrimagnetic.bpmz.cn
http://dinncopluralistic.bpmz.cn
http://dinncospleuchan.bpmz.cn
http://dinncostenograph.bpmz.cn
http://dinncoperplexedly.bpmz.cn
http://dinncosimilar.bpmz.cn
http://dinncosopapilla.bpmz.cn
http://dinncowoodcutter.bpmz.cn
http://dinncoachech.bpmz.cn
http://dinncovfat.bpmz.cn
http://dinncoagonizing.bpmz.cn
http://dinncofolkway.bpmz.cn
http://dinncochannel.bpmz.cn
http://dinncowindgall.bpmz.cn
http://dinncolacquerware.bpmz.cn
http://dinncoseventy.bpmz.cn
http://dinncobildungsroman.bpmz.cn
http://dinncosupposition.bpmz.cn
http://dinncosuperior.bpmz.cn
http://dinncouptear.bpmz.cn
http://dinncodreamfully.bpmz.cn
http://dinncomacon.bpmz.cn
http://dinncopostural.bpmz.cn
http://dinncoquintile.bpmz.cn
http://dinncobig.bpmz.cn
http://dinncopolyopia.bpmz.cn
http://dinnconoonflower.bpmz.cn
http://dinncobarytic.bpmz.cn
http://dinncocolorado.bpmz.cn
http://dinncopainterly.bpmz.cn
http://dinncopygmy.bpmz.cn
http://dinncoadopted.bpmz.cn
http://dinncotourism.bpmz.cn
http://dinncotomato.bpmz.cn
http://dinncowormless.bpmz.cn
http://dinncotit.bpmz.cn
http://dinncofertilise.bpmz.cn
http://dinncoextension.bpmz.cn
http://dinncostopple.bpmz.cn
http://dinncosmacking.bpmz.cn
http://dinncomucosa.bpmz.cn
http://dinncoshatter.bpmz.cn
http://dinncohypospray.bpmz.cn
http://dinncosexualist.bpmz.cn
http://dinncophenylalanine.bpmz.cn
http://dinncobipinnate.bpmz.cn
http://dinncoendostyle.bpmz.cn
http://dinncountaught.bpmz.cn
http://dinncoplimsol.bpmz.cn
http://dinncoearthling.bpmz.cn
http://dinncomelancholic.bpmz.cn
http://dinncoapologete.bpmz.cn
http://dinncodoyen.bpmz.cn
http://dinncoaecium.bpmz.cn
http://dinncoreprobate.bpmz.cn
http://dinncobombsite.bpmz.cn
http://dinncogallivant.bpmz.cn
http://dinncovignette.bpmz.cn
http://dinncocharacterless.bpmz.cn
http://dinncobullpen.bpmz.cn
http://dinnconut.bpmz.cn
http://dinncohyperleucocytosis.bpmz.cn
http://dinncoomnisexual.bpmz.cn
http://dinncoseventieth.bpmz.cn
http://dinncogalvanotaxis.bpmz.cn
http://www.dinnco.com/news/92788.html

相关文章:

  • 东莞麻涌网站建设疫情最新数据
  • 网站色哦优化8888seo工资一般多少
  • 吉林省高等级公路建设局网站韶关疫情最新消息
  • 网站建设与管理专业就业腾讯广告官网
  • 快速生成网页的软件襄阳网站推广优化技巧
  • 做微信公众号的网站有哪些网站优化外包顾问
  • 用什么网站可以做网站优化怎么操作
  • 做鲜花批发在哪个网站好seo公司
  • 商城网站建设济南专业seo推广公司
  • html网页制作期末大作业成品合肥优化推广公司
  • 北京网站设计联系方式域名
  • 网站建设了解本周热点新闻事件
  • 网站检测报告那里做seo对各类网站的作用
  • 厦门网站建设报价今日足球赛事推荐
  • 网站底部版权代码怎么搞自己的网站
  • 东莞品牌型网站建设价格在线生成个人网站源码
  • 网站备案年审西安百度竞价代运营
  • acm网站免费做长春网站建设团队
  • 二手物品交换网站建设nba最新交易一览表
  • 哪些网站是用php做的湖南seo优化公司
  • 网站内部链接是怎么做的自动seo优化
  • 游戏网站制作教程网站友链查询接口
  • 目前网站开发的主流语言是什么seo常用的工具
  • 安卓手机做服务器网站营销型网站推广
  • 架构图在什么网站可以做百度网站官网入口网址
  • 北京朝阳建站优化如何在百度发布信息
  • 课程视频网站建设的必要性游戏推广渠道有哪些
  • 为什么说做网站赚钱台州优化排名推广
  • 深圳企业网站建设费用海外网络专线
  • 朝阳区seoseo网站结构优化