① 帮我看看这段代码有什么问题(python)谢啦
当前目录下没有beach_ball.png
测试时随便放了一张图并改名beach_ball.png没有出错
② python怎么用PIL模块处理BMP图像 二值化
Pillow 提供了一个 .load() 方法,用来处理像素。图片嘛,当然是二维的,有宽和高的。
pixels = image.load()
for x in ramge(image.width):
for y in range(image.height):
pixsels[x, y] = 255 if pixsels[x, y] > 125 else 0
当然了,只是最简单的二值化的话,直接 image.convert('1') 就可以了 :-)
③ python里面pygame打不开图片
You should use os.path.join() for compatibility.----from pygame
试试pygame.image.load(os.path.join('文件目录', '文件名'))
假如图片路径为E:\exercise\Python3.6.0\image.jpg,则可写:
pygame.image.load(os.path.join(r'E:\exercise\Python3.6.0', 'image.jpg'))
④ python 图片移动
#-*-coding:gbk-*-
importImage
importImageDraw
importImageChops
im=Image.new('RGB',(800,600),'white')
im2=Image.open('test.png')
#测试图放画布左边,画布右边底色涂黄
left=(im.size[0]/2-im2.size[0])/2
upper=(im.size[1]-im2.size[1])/2
im.paste(im2,(left,upper))
im.paste('yellow',(im.size[0]/2,0)+im.size)
im.show()
#因要旋转得计算测试图对角线,然后切出
d=int((im2.size[0]**2+im2.size[1]**2)**0.5)
left=(im.size[0]/2-d)/2
upper=(im.size[1]-d)/2
bbox=(left,upper,left+d,upper+d)
cp=im.crop(bbox)
#图底不是黑先做mask再作旋转,
#mask做法不一,按测试图可选取g或b通道
r,g,b=cp.split()
mask=g.point(lambdai:i<250and255)
angle=30
mask=mask.rotate(angle)
cp=cp.rotate(angle)
#利用mask贴在画布右边黄底区内
im.paste(cp,(left+im.size[0]/2,upper),mask)
im.show()
⑤ 怎样使用Python图像处理
Python图像处理是一种简单易学,功能强大的解释型编程语言,它有简洁明了的语法,高效率的高层数据结构,能够简单而有效地实现面向对象编程,下文进行对Python图像处理进行说明。
当然,首先要感谢“恋花蝶”,是他的文章“用Python图像处理 ” 帮我坚定了用Python和PIL解决问题的想法,对于PIL的一些介绍和基本操作,可以看看这篇文章。我这里主要是介绍点我在使用过程中的经验。
PIL可以对图像的颜色进行转换,并支持诸如24位彩色、8位灰度图和二值图等模式,简单的转换可以通过Image.convert(mode)函数完 成,其中mode表示输出的颜色模式。例如''L''表示灰度,''1''表示二值图模式等。
但是利用convert函数将灰度图转换为二值图时,是采用固定的阈 值127来实现的,即灰度高于127的像素值为1,而灰度低于127的像素值为0。为了能够通过自定义的阈值实现灰度图到二值图的转换,就要用到 Image.point函数。
深度剖析Python语法功能
深度说明Python应用程序特点
对Python数据库进行学习研究
Python开发人员对Python经验之谈
对Python动态类型语言解析
Image.point函数有多种形式,这里只讨论Image.point(table, mode),利用该函数可以通过查表的方式实现像素颜色的模式转换。其中table为颜色转换过程中的映射表,每个颜色通道应当有256个元素,而 mode表示所输出的颜色模式,同样的,''L''表示灰度,''1''表示二值图模式。
可见,转换过程的关键在于设计映射表,如果只是需要一个简单的箝位值,可以将table中高于或低于箝位值的元素分别设为1与0。当然,由于这里的table并没有什么特殊要求,所以可以通过对元素的特殊设定实现(0, 255)范围内,任意需要的一对一映射关系。
示例代码如下:
import Image # load a color image im = Image.open(''fun.jpg'') # convert to grey level image Lim = im.convert(''L'') Lim.save(''fun_Level.jpg'') # setup a converting table with constant threshold threshold = 80 table = [] for i in range(256): if i < threshold: table.append(0) else: table.append(1) # convert to binary image by the table bim = Lim.point(table, ''1'') bim.save(''fun_binary.jpg'')
IT部分通常要完成的任务相当繁重但支撑这些工作的资源却很少,这已经成为公开的秘密。任何承诺提高编码效率、降低软件总成本的IT解决方案都应该进行 周到的考虑。Python图像处理所具有的一个显着优势就是可以在企业的软件创建和维护阶段节约大量资金,而这两个阶段的软件成本占到了软件整个生命周期中总成本 的50%到95%。
Python清晰可读的语法使得软件代码具有异乎寻常的易读性,甚至对那些不是最初接触和开发原始项目的程序员都 能具有这样的强烈感觉。虽然某些程序员反对在Python代码中大量使用空格。
不过,几乎人人都承认Python图像处理的可读性远胜于C或者Java,后两 者都采用了专门的字符标记代码块结构、循环、函数以及其他编程结构的开始和结束。提倡Python的人还宣称,采用这些字符可能会产生显着的编程风格差 异,使得那些负责维护代码的人遭遇代码可读性方面的困难。转载
⑥ 为什么python这个代码写出来的图片不显示
传入的 C:xxx 是目录,且存在?且下面有文件么?
Import os.path
对目录进行下判断吧: os.path.isdir
文件路径的拼装用os.path.join
读文件不用while,
for line in f:
print line
⑦ 如何在python中读取bmp格式图片文件
直接用open打开后read读取
A=open('test.bmp','rb')
B=open('test2.bmp','w')
c=A.read()
B.write(c)
A.close()
B.close()
⑧ python 怎么使用pyglet第三方库
先提供官网:
http://pyglet.org/
我们知道python 本身提供了界面库和多媒体库,但是确实不好用。
我们在界面的时候可以使用PyQT库,和xWidget。而开发多媒体的时候则用本文提到的pyglet库。先来看看这些特性:
可以播放所有的音频和视频,例如mp3, ogg/Vorbis, wma, DivX, mpeg-2, h264, wmv, Xvid.
更重要的他是免费的,遵循BSD开源软件协议。你可以在你的商业软件中去使用它。
下载它就去官网:
http://pyglet.org/
网站有详细的文档介绍怎么安装和使用。
下面列出它所提供的模块,其实从下列列表中你也能知道它能做些什么了:
Submoles
pyglet.app
Application-wide functionality.
pyglet.clock
Precise framerate calculation, scheling and framerate limiting.
pyglet.event
Event dispatch framework.
pyglet.font
Load fonts and render text.
pyglet.font.base
Abstract classes used by pyglet.font implementations.
pyglet.gl
OpenGL and GLU interface.
pyglet.gl.gl_info
Information about version and extensions of current GL implementation.
pyglet.gl.glu_info
Information about version and extensions of current GLU implementation.
pyglet.graphics
Low-level graphics rendering.
pyglet.graphics.allocation
Memory allocation algorithm for vertex arrays and buffers.
pyglet.graphics.vertexattribute
Access byte arrays as arrays of vertex attributes.
pyglet.graphics.vertexbuffer
Byte abstractions of Vertex Buffer Objects and vertex arrays.
pyglet.graphics.vertexdomain
Manage related vertex attributes within a single vertex domain.
pyglet.image
Image load, capture and high-level texture functions.
pyglet.image.atlas
Group multiple small images into larger textures.
pyglet.info
Get environment information useful for debugging.
pyglet.media
Audio and video playback.
pyglet.resource
Load application resources from a known path.
pyglet.sprite
Display positioned, scaled and rotated images.
pyglet.text
Text formatting, layout and display.
pyglet.text.caret
Provides keyboard and mouse editing proceres for text layout.
pyglet.text.document
Formatted and unformatted document interfaces used by text layout.
pyglet.text.formats
Document formats.
pyglet.text.formats.attributed
Extensible attributed text format for representing pyglet formatted documents.
pyglet.text.formats.html
Decode HTML into attributed text.
pyglet.text.formats.plaintext
Plain text decoder.
pyglet.text.formats.structured
Base class for structured (hierarchical) document formats.
pyglet.text.layout
Render simple text and formatted documents efficiently.
pyglet.text.runlist
Run list encoding utilities.
pyglet.window
Windowing and user-interface events.
pyglet.window.event
Events forpyglet.window.
pyglet.window.key
Key constants and utilities for pyglet.window.
pyglet.window.mouse
Mouse constants and utilities for pyglet.window.
⑨ pygame中image.load无法使用
首先看下图片有问题没,没问题再看看路径,不知道你绝地路径怎么写的,用单斜杠写入绝对路径要加r,比如r"C:\Users\Administrator",按你那种写法,得把图片和py文件放到同一个目录下才能找到。
⑩ python (pygame)运行无报错,但是一直都是这样无法加载图片…Orz 以下是程序,路径是没有问题的……
importpygame,sys
frompygame.localsimport*
pygame.init()
screen=pygame.display.set_mode((660,479),0,32)
pygame.display.set_caption('Hello,world!')
background=pygame.image.load(r'D:PYGameEXwd.png')
whileTrue:
foreventinpygame.event.get():
ifevent.type==QUIT:
pygame.quit()
sys.exit()
screen.blit(background,(0,0))
pygame.display.update()
我的是python3,linux系统,试过了,可以加载图片,你试一下在你电脑行不行。
参考:https://my.oschina.net/leopardsaga/blog/103314