未加星标

python放大图片和画方格实现算法

字体大小 | |
[开发(python) 所属分类 开发(python) | 发布者 店小二05 | 时间 | 作者 红领巾 ] 0人收藏点击收藏

本文实例为大家分享了python放大图片和画方格的具体代码,供大家参考,具体内容如下

1、Python 放大图片和画方格算法

#!C:/Python27
# -*- coding: utf-8 -*-
import os
import sys
from PIL import Image,ImageDraw


def make_doc_data(lf):

#li, ri = make_regalur_image(Image.open(lf)), make_regalur_image(Image.open(rf))#两张图片方法
li = Image.open(lf)

size = (256, 256)
#几何转变,全部转化为256*256像素大小
li =li.resize(size).convert('RGB')

li.save(lf + '_regalur.png')#转换图片格式:img.save('file.jpg'),保存临时的

#ri.save(rf + '_regalur.png')#img对象到硬盘

fd = open('stat.csv', 'w')#stat模块是做随机变量统计的,stat用来计算随机变量的期望值和方差

#这句是关键啊,把histogram的结果进行map处理
#fd.write('\n'.join(l + ',' + r for l, r in zip(map(str, li.histogram()), map(str, ri.histogram()))))
fd.write(','.join(map(str, li.histogram())))
fd.close()

li = li.convert('RGB') #与save对象,这是转换格式

draw = ImageDraw.Draw(li)

for i in xrange(0, 256, 64):
draw.line((0, i, 256, i), fill = '#ff0000')
draw.line((i, 0, i, 256), fill = '#ff0000')

#从始至终划线!通过把每一列刷成红色,来进行颜色的随机分布划分

#用法:pygame.draw.line(Surface, color, start_pos, end_pos, width=1)

li.save(lf + '_lines.png')


make_doc_data('testpic/1370.bmp')

 2、放大缩小图片的几种方法

#!C:/Python27
#coding=utf-8

import pytesseract
from pytesser import *
from PIL import Image,ImageEnhance,ImageFilter
import os
import fnmatch
import re,time

import urllib, random

#修改文件名
#os.rename("E:/pythonScript/Model/font/2.bmp","E:/pythonScript/Model/font/dock2.bmp")


def CutImg():

img = Image.open('.//6907.jpg').convert('L')

print img.size

w, h = img.size

#rowheight = h // rownum
#colwidth = w // colnum
#imgry.show()
j = 10
for i in range(4):


x = 10 + i*24 #验证码的x,y坐标

y = 6

img.crop((x-4, y,x+6, y+14)).save("pic/%d.bmp" % j)

print "j=",j

j += 1
img.close()


infile = ('.//testpic//001n.bmp')
outfile = ('.//testpic//001n.png')


def fixed_size(infile):

"""按照固定尺寸处理图片"""
im = Image.open(infile)

size = (256, 256)

im2 =im.resize(size).convert('RGB')
out = im2.resize(size,Image.ANTIALIAS)
out.save(outfile)
print u"\n按固定尺寸放大图片,处理已完成"
def resize_by_width(w_divide_h):

"""按照宽度进行所需比例缩小"""
im = Image.open(infile)
print im.size

(x, y) = im.size
x_s = x
print x_s
y_s = x/w_divide_h #w_divide_h > x
print y_s
out = im.resize((x_s, y_s), Image.ANTIALIAS)
out.save(outfile)


def resize_by_height(w_divide_h):

"""按照高度进行所需比例缩放"""
im = Image.open(infile)
(x, y) = im.size
print im.size
x_s = y*w_divide_h
y_s = y
out = im.resize((x_s, y_s), Image.ANTIALIAS)
out.save(outfile,quality = 95,dpi=(72, 72))
def cut_by_ratio(width, height):
"""按照图片长宽比进行分割"""
im = Image.open(infile)
width = float(width)
height = float(height)
(x, y) = im.size
if width > height:
region = (0, int((y-(y * (height / width)))/2), x, int((y+(y * (height / width)))/2))
elif width < height:
region = (int((x-(x * (width / height)))/2), 0, int((x+(x * (width / height)))/2), y)
else:
region = (0, 0, x, y)

#裁切图片
crop_img = im.crop(region)
#保存裁切后的图片
crop_img.save(outfile)
def Lager(size):
im = Image.open(infile)
im_resized=im.resize(size, Image.ANTIALIAS)
im_resized.save(outfile,quality = 95,dpi=(72, 72))
def mohuimg():
"""
模糊图片
"""
im = Image.open(infile)
im2 = im.filter(ImageFilter.BLUR)
im2.save(outfile)
"""
多种尺寸icon的存储
"""
image_size = [512,250,144,140,128,120,108,100,88,72,48,32,28]
def create_icon():
for size in image_size:
'''''pri_image = Image.open("icon.png")
pri_image.thumbnail((size,size))
image_name = "icon_%d.png"%(size)
pri_image.save(image_name)'''
pri_image = Image.open(infile)
pri_image.resize((size,size),Image.ANTIALIAS ).save("testpic/icom_%d.png"%(size))

fixed_size(infile)
#resize_by_width(10)
#resize_by_height(1)
#cut_by_ratio(50,20)
#Lager(256)
#mohuimg()
#create_icon()
#CutImg()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。


您可能感兴趣的文章:python+tkinter编写电脑桌面放大镜程序实例代码教你使用python画一朵花送女朋友Python使用matplotlib绘制动画的方法使用Python编写简单的画图板程序的示例教程python使用reportlab画图示例(含中文汉字)Python使用matplotlib实现在坐标系中画一个矩形的方法Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法python计算圆周长、面积、球体体积并画出圆利用Python画ROC曲线和AUC值计算从零学python系列之教你如何根据图片生成字符画

本文开发(python)相关术语:python基础教程 python多线程 web开发工程师 软件开发工程师 软件开发流程

主题: 算法硬盘PythonTIUCAU变量期望值OC曲线矩形
tags: size,Image,im,save,open,width,image,height,import,infile,li,resize,def,img
分页:12
转载请注明
本文标题:python放大图片和画方格实现算法
本站链接:https://www.codesec.net/view/574842.html


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 开发(python) | 评论(0) | 阅读(173)