[PIL] 为图片添加30行*50列的正方形网格

为栅格图片添加30x50的格网

从左下角开始画

# -*- coding: utf-8 -*-

from PIL import Image
from PIL import ImageDraw
import os

input_img = r'E:\user\Desktop\tmp.png'

# 生成格网
(filepath,filename) = os.path.split(input_img)
img = Image.open(input_img)
img_d = ImageDraw.Draw(img)
x_len, y_len = img.size
x_step = x_len/50
y_step = y_len/30
print x_len
print y_len
for x in range(0, x_len, x_step):
    img_d.line(((x, 0), (x, y_len)), (125, 125, 125))
for y in range(0, y_len, y_step):
    j = y_len - y - 1
    img_d.line(((0, j), (x_len, j)), (125, 125, 125))
img.save(os.path.join(filepath,"grid_"+filename) )

# 为格网编码 左下角开始
cnt = 1
for i in range(0,x_len,x_step):
    img_d.text((i,y_len-y_step), str(cnt).encode("utf8"),fill=(255,0,0))
    cnt+=1
cnt = 1
for j in range(y_step,y_len,y_step):
    z = y_len - j
    img_d.text((0,z), str(cnt).encode("utf8"),fill=(255,0,0) )
    cnt+=1
img.save(os.path.join(filepath, "grid_geocoding_"+filename))

原图:

这里写图片描述

生成格网:从左下角开始

这里写图片描述

为格网编码:从左下角开始

这里写图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

geodoer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值