导航:首页 > 编程语言 > 图片局部旋转python

图片局部旋转python

发布时间:2022-04-12 10:12:42

python能用鼠标旋转散点图吗

首先,你需要用到python的图形用户界面的模块 其次,你需要用到里面绘制界面和添加鼠标响应的功能模块

② 怎么样在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+Pygame旋转图像、灰度图像

‘’‘
2013-7-4
by JavenLee
希望能带给你启发
'''
import Image
img = Image.open(‘origin.png’) # 得到一个图像的实例对象 img
rot_img = img.rotate(270) #顺时针旋转90度
rot_img.save("rot_img.jpg")
x_img=img.transpose(Image.FLIP_LEFT_RIGHT) #垂直翻转
y_img=img.transpose(Image.FLIP_TOP_BOTTOM) #水平翻转

new_imag=img.convert('L')
'''
模式
img.convert() 参数说明如下:
1 1位像素,黑和白,存成8位的像素
L 8位像素,黑白
P 8位像素,使用调色板映射到任何其他模式
RGB 3×8位像素,真彩
RGBA 4×8位像素,真彩+透明通道
CMYK 4×8位像素,颜色隔离
YCbCr 3×8位像素,彩色视频格式
I 32位整型像素
F 32位浮点型像素

'''

④ python可以用来处理图像吗

可以的,
PythonWare公司提供了免费的Python图像处理工具包PIL(Python Image Library),该软件包提供了基本的图像处理功能,如:

改变图像大小,旋转图像,图像格式转换,色场空间转换,图像增强,直方图处理,插值和滤波等等。虽然在这个软件包上要实现类似MATLAB中的复杂的图像处理算法并不太适合,但是Python的快速开发能力以及面向对象等等诸多特点使得它非常适合用来进行原型开发。

在PIL中,任何一副图像都是用一个Image对象表示,而这个类由和它同名的模块导出,因此,最简单的形式是这样的:

import Image img = Image.open(“dip.jpg”)
注意:第一行的Image是模块名;第二行的img是一个Image对象;
Image类是在Image模块中定义的。关于Image模块和Image类,切记不要混淆了。现在,我们就可以对img进行各种操作了,所有对img的
操作最终都会反映到到dip.img图像上。

PIL提供了丰富的功能模块:Image,ImageDraw,ImageEnhance,ImageFile等等。最常用到的模块是
Image,ImageDraw,ImageEnhance这三个模块。下面我对此分别做一介绍。关于其它模块的使用请参见说明文档.有关PIL软件包和
相关的说明文档可在PythonWare的站点www.Pythonware.com上获得。

Image模块:

Image模块是PIL最基本的模块,其中导出了Image类,一个Image类实例对象就对应了一副图像。同时,Image模块还提供了很多有用的函数。

(1)打开一文件:
import Image img = Image.open(“dip.jpg”)

这将返回一个Image类实例对象,后面的所有的操作都是在img上完成的。

(2)调整文件大小:

import Image img = Image.open("img.jpg") new_img = img.resize
((128,128),Image.BILINEAR) new_img.save("new_img.jpg")

原来的图像大小是256x256,现在,保存的new_img.jpg的大小是128x128。

就是这么简单,需要说明的是Image.BILINEAR指定采用双线性法对像素点插值。

在批处理或者简单的Python图像处理任务中,采用Python和PIL(Python Image Library)的组合来完成图像处理任务是一个很不错的选择。设想有一个需要对某个文件夹下的所有图像将对比度提高2倍的任务。用Python来做将是十分简单的。当然,我也不得不承认Python在图像处理方面的功能还比较弱,显然还不适合用来进行滤波、特征提取等等一些更为复杂的应用。我个人的观点是,当你要实现这些“高级”的算法的时候,好吧,把它交给MATLAB去完成。但是,如果你面对的只是一个通常的不要求很复杂算法的图像处理任务,那么,Python图像处理应该才是你的最佳搭档。

⑤ 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()

⑥ 如何将图片中的一部分图片用ps进行旋转谢谢

先用选择工具选择你要进行变动的那部分图像,至于选择的方法有多种而且得看你的图片来决定采取何种选择方法。然后在英文输入状态下按下“CTRL+T”出现变换框,你将鼠标移动对角点上,当鼠标变为一种旋转的图标时,你就可以进行旋转了。希望可以帮到你

⑦ python做三维图结果怎么用鼠标拖动旋转

旋转视角,要根据三角函数计算的,每转动一个角度都需要重新计算,这些都需要实现,之后根据转动的数值传入进去,计算后,重新画图

⑧ python 图像旋转怎么去除黑边

去除黑边现象的办法:
1)在做图像坐标映射反查的时候,算出当前点在原始图像的外部还是内部,若在外部,判断当前像素点的X或者Y位置,找临近四个边界的像
素值代替;

该方法太过繁琐,适合自己写程序实现,如若想调用现有的一些库函数,可以考虑2)做法:

2)将待旋转的图像进行边界填充,最不济的情况下可以扩充为原始图像的大小;

旋转边界填充图像;

计算原始图像经过旋转以后的结果图像的尺寸大小;

在边界填充旋转图像上截取目标图像;(图像都是按照图像中心旋转的);
附上一段matlab人脸根据人眼位置对齐的代码:
[plain] view plain
eye_angle = atan2( (eye_pts(2,2) - eye_pts(1,2)),(eye_pts(2,1) - eye_pts(1,1) ) ) * 180 / pi; % 人眼的倾斜角度
if eye_angle < 0
eye_angle = eye_angle + 360;
end
if floor(eye_angle) <= 5 || floor( 360 - eye_angle ) <= 5
continue;
end % 5度之内不做对齐操作
img = imread(img_path);
[m,n,~] = size(img);
img_pad = padarray(img,[m n],'both','replicate');% 扩充图像
img_pad_rotate = imrotate(img_pad,eye_angle,'bilinear'); % 旋转扩充图像
[m_pad_r,n_pad_r,~] = size(img_pad_rotate);
[plain] view plain
eye_angle = eye_angle * pi / 180;
f_cos = cos(eye_angle);f_sin = sin(eye_angle);
new_m = floor(m * abs(f_cos) + n * abs(f_sin));
new_n = floor(n * abs(f_sin) + m * abs(f_cos));% 最终对齐图像的大小
left = floor((n_pad_r - new_n) / 2);right = left + new_n;
bott = floor((m_pad_r - new_m) / 2);up = bott + new_m;
face_rorate = img_pad_rotate(bott : up,left : right,:); % 截取目标图像
figure,imshow(face_rorate)

⑨ J在windowes上对图片进行右键旋转后,在Python语言中对img 使用size()方法,获取的宽高仍为旋转之前的!

只有相应显示文字信息没变,但图片视觉效果和windows旋转的一样吗

阅读全文

与图片局部旋转python相关的资料

热点内容
当一个体面的程序员是什么体验 浏览:291
联想安装哪个编译器 浏览:446
苹果手机如何创建app组 浏览:40
如何知道服务器开通了什么端口 浏览:34
动态ip地址由dhcp服务器来分配 浏览:800
aes128加密c 浏览:396
成为插画师pdf 浏览:325
奥特曼系列ol为什么进不去服务器 浏览:742
盛世服务器怎么开启 浏览:87
编译安卓源码修改定位 浏览:200
加密上市是什么意思 浏览:802
一年程序员面试 浏览:174
多个jpg合成pdf 浏览:929
pdf转word是图片 浏览:941
程序员看不懂怎么办 浏览:273
linux操作系统题 浏览:767
单片机无符号数加法 浏览:229
应用隐藏加密怎么关闭 浏览:269
汽车空调的压缩机电线有什么用 浏览:431
电脑加密图片如何取消加密 浏览:343