【326】PIL 截图及图片识别

参考:另一种用python识别图片文字的方法

参考:Python人工智能之图片识别,Python3一行代码实现图片文字识别

参考:Python3+Selenium3环境构建填坑之旅

参考:基于python的-PIL定位截图

参考:Python的PIL(图片截取)

参考:Python实现截图

参考:Python实现屏幕截图的两种方式

参考:python图像处理:pytesseract和PIL

参考:Python编写屏幕截图程序方法(clipboard)


一、定位截图

安装库:pillow(PIL 是 2.x 版本的,pillow 是 3.x 版本的)、pytesseract(需要修改配置)

  代码实现:(全屏 - 对于双屏幕来说,只能截取主屏幕)

>>> from PIL import ImageGrab
>>> pic = ImageGrab.grab()
>>> pic.save('D:/tmp/4.jpg')

  代码实现:(全屏 - 通过 PrintScreen,可以实现两个屏幕截图,获取剪切板的图像)

from PIL import ImageGrab
# 可以实现 printscreen 按键,获取全屏截图
pic = ImageGrab.grabclipboard()
pic.save(r"D:\tmp\save.jpg")

  代码实现:(按照范围截屏)

from PIL import ImageGrab
# 输入屏幕左上角和右下角的坐标
pic = ImageGrab.grab(bbox=(0, 0, 100, 100))
pic.save(r"D:\tmp\4.jpg")

  代码实现:(按照范围截屏,但是对于双屏幕,需要通过 printscreen 获取截图,再按照坐标点进行剪切)

from PIL import ImageGrab
# 通过 printscreen 获取全屏截图
pic = ImageGrab.grabclipboard()
pic_mini = pic.crop(box=(200,200,400,400))
pic_mini.save(r"D:\tmp\save_min.jpg")

 

二、图片识别

安装库:pillow(PIL 是 2.x 版本的,pillow 是 3.x 版本的)、pytesseract(需要修改配置)

安装软件:tesseract-ocr

  代码:中文(修改 lang 为 eng,可以用来识别英文)

from PIL import Image
import pytesseract
#上面都是导包,只需要下面这一行就能实现图片文字识别,中文识别
text=pytesseract.image_to_string(Image.open('D:/tmp/1.jpg'),lang='chi_sim')
print(text)

  实现将截图直接进行识别,不需要存储~

from PIL import Image
import pytesseract
pic = ImageGrab.grab(bbox=(200,200,400,400))
text=pytesseract.image_to_string(pic, lang='chi_sim')
print(text)

 

三、获取 RGB 值

参考:如何用Python PIL获取图片的RGB数值?

>>> from PIL import Image 
>>> lena = Image.open("D:\\Code\\Python\\test\\img\\lena.jpg") 
>>> lena_L =lena.convert("L") 
>>> lena_L_rgb =lena_L.convert("RGB") 
>>>lena.getpixel((0,0)) 
(197, 111, 78) 
>>>lena_L.getpixel((0,0)) 
132 
>>>lena_rgb.getpixel((0,0)) 
(132, 132, 132)

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值