turtle 画照片
# -*- coding: utf-8 -*- import turtle as t
import cv2 def draw_img(img_path, scale=1):
"""
画图片里的内容
:param img_path: 图片路径
:param scale: 缩放比例,比如1,0.5,0.25
:return:
"""
t.getscreen().colormode(255)
img = cv2.imread(img_path)
img1 = img[::int(1/scale)] # 取图片一半(隔行取)的行数据
width = len(img1[0])/int(1/scale) # 取图片的宽度
height = len(img1) # 取图片的高度 t.setup(width=width+100, height=height+100) # 设置画布大小, 600, 370
t.pu()
t.goto(-width/2 + 10, height/2 - 10) # 移动到指定坐标的位置 -140,
t.pd()
t.tracer(3000) # 加快作图速度, 0 or False 时图形一次性画好 for k1, i in enumerate(img1):
for j in i[::int(1/scale)]:
t.pencolor((j[2], j[1], j[0])) # 设置画笔颜色
t.fd(1) # 沿着海龟的前方向运行1
t.pu() # 画笔抬起,不留下痕迹
t.goto(-width/2, height/2 -k1) # 移动画笔到下一行最左侧位置
t.pd() # 画笔落下,留下痕迹
t.done() if __name__ == '__main__':
path = r'./2.jpg'
draw_img(path, 0.5)
turtle 画照片的更多相关文章
- python运用turtle 画出汉诺塔搬运过程
python运用turtle 画出汉诺塔搬运过程 1.打开 IDLE 点击File-New File 新建立一个py文件 2.向py文件中输入如下代码 import turtle class Stac ...
- python3 turtle 画国际象棋棋盘
python3 turtle 画国际象棋棋盘 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wan import turt ...
- day 03 turtle 画鹅
turtle 画鹅 import turtle t=turtle turtle.speed(10) t. setup(800,600) #画头 turtle.penup() turtle.goto(0 ...
- *【Python】【demo实验31】【练习实例】【使用turtle画小猪佩奇】
如下图小猪佩奇: 要求使用turtle画小猪佩奇: 源码: # encoding=utf-8 # -*- coding: UTF-8 -*- # 使用turtle画小猪佩奇 from turtle i ...
- 【Python】【demo实验29】【练习实例】【使用turtle画五角星】
原题: 使用turtle画五角星: 我的代码: #!/usr/bin/python # encoding=utf-8 # -*- coding: UTF-8 -*- from turtle impor ...
- 使用turtle画故宫(伍奇,侯俊豪小组)
这个代码主要有两个部分,第一部分是画出故宫,第二部分是用random函数随机画心,故宫部分设置多个函数和循环再进行颜色填充即可完成. 此处为视频链接 from turtle import* impor ...
- 用python turtle画玫瑰
1.turtle 库 2.画玫瑰的代码: import turtle turtle.penup() turtle.left() turtle.fd() turtle.pendown() turtle. ...
- Python之turtle画同心圆和棋盘
画饼图 import turtle t = turtle.Pen() for i in range(5): t.penup() t.goto(0, -i*30) t.pendown() t.circl ...
- 用python的turtle画分形树
由于分形树具有对称性,自相似性,所以我们可以用递归来完成绘制.只要确定开始树枝长.每层树枝的减短长度和树枝分叉的角度,我们就可以把分形树画出来啦!! 代码如下: # -*- coding: utf-8 ...
- python 用turtle 画小猪佩奇
from turtle import * def nose(x,y):#鼻子 penup()#提起笔 goto(x,y)#定位 pendown()#落笔,开始画 setheading(-30)#将乌龟 ...
随机推荐
- Zabbix源码安装与yum安装
一.源码安装方式:zabbix-server LAMP环境准备: #groupadd zabbix#useradd -g zabbix zabbix 1.安装依赖包: #yum install gcc ...
- ubuntu下ntp时间同步
1. 首先安装ntp服务(ubuntu 16.02)在linux的root用户下执行以下命 sudo apt-get install ntp (如果不是ubuntu系统则执行 yum insta ...
- Java pom阿里云插件
<pluginRepositories> <pluginRepository> <id>alimaven spring plugin</id> < ...
- VKM4 批准功能对应 bapi
追踪代码发现function都在这里, SD_ORDER_CREDIT_RELEASE RVALVFORMS CALL FUNCTION 'MESSAGE_TEXT_BUILD' EXPORTI ...
- 如何在网页打开CAD,DWG文件,(在线CAD)在线CAD平台,H5前端显示CAD,网页CAD
简介 提示:目前提供两种在网页中浏览编辑CAD图纸方案,详细说明见:https://help.mxdraw.com/?pid=46 提示:MxDraw云图在线API教程:https://demo.mx ...
- 打开IE浏览器被强制跳转至edge
打开edge浏览器,右上角更多,设置,默认浏览器,设置"从不" 控制面板,Internet选项,高级,浏览,取消勾选"启用第三方浏览器扩展"
- C++11之线程库
在 C++11 之前,涉及到多线程问题,都是和平台相关的,比如 Windows 和 Linux 下各有自己的接口,这使得代码的可移植性比较差.C++11 中最重要的特性就是对线程进行支持了,并且可以跨 ...
- &以及&&的用法总结
&有两种用法 1.取地址 2.引用 取地址和引用没有任何关系,不要瞎联系! 1.取地址: // 很常规,仅此而已 std::string *p = &s; 2.引用: a)引用是某一个 ...
- Java 接口内容小结
Java接口学习:https://www.cnblogs.com/mlllily/p/14923837.html 小结内容: 在Java9+版本中,接口内容可以有常量.抽象方法.默认方法.静态方法.私 ...
- select标签如何实现 每个option传递多个值
设计项目时 我们有时候会利用 <select> <option value="值1" > </option> </select> ...