文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>python 简单图像处理(3) 平移

python 简单图像处理(3) 平移

时间:2010-12-26  来源:想兰

其变换公式是



可用矩阵变换公式

逆变换方法是

若移动后大小不变

当多余部分填充为黑色时

平移结果为

当多余部分为白色时

平移结果为

若移动后图像尺寸变大

则平移结果为

 

好了,我们用OpenCV实现上面的运算

import cv

image
= cv.LoadImage('lena.jpg',1)
x
= 20
y
= 30
size
= (image.width,image.height)
size2
= (image.width+y , image.height+x)
iTr1
= cv.CreateImage(size,image.depth,image.nChannels)
iTr2
= cv.CreateImage(size,image.depth,image.nChannels)
iTr3
= cv.CreateImage(size2,image.depth,image.nChannels)
h
= image.height
w
= image.width
for i in range(h):
for j in range(w):
iTr3[i
+x,j+y] = image[i,j]
if i >=x and j >=y:
iTr1[i,j]
= image[i-x,j-y]
iTr2[i,j]
= image[i-x,j-y]
else:
iTr1[i,j]
= (0,0,0)
iTr2[i,j]
= (255,255,255)

cv.ShowImage(
'image',image)
cv.ShowImage(
'iTr1',iTr1)
cv.ShowImage(
'iTr2',iTr2)
cv.ShowImage(
'iTr3',iTr3)
cv.WaitKey(0)

 

我们来看运行结果

 

 

可以看出对于iTr3,我们没有对多余部分进行处理,显示的颜色是黑色

所以在CreateImage函数创建一副图的时候,若不进行处理。是一副黑色的图像

即每个像素点都是0或是tuple(0,0,0)

好啦。图像的平移就是这样啦

相关阅读 更多 +
排行榜 更多 +
找茬脑洞的世界安卓版

找茬脑洞的世界安卓版

休闲益智 下载
滑板英雄跑酷2手游

滑板英雄跑酷2手游

休闲益智 下载
披萨对对看下载

披萨对对看下载

休闲益智 下载