上图:

上代码:

import os

import cv2

import math

import random

import numpy as np

from scipy import misc, ndimage

import matplotlib.pyplot as plt

filepath = './'

img = cv2.imread('sfz4.png')

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

edges = cv2.Canny(gray, 50, 150, apertureSize=3)

# 霍夫变换

lines = cv2.HoughLines(edges, 1, np.pi / 180, 0)

rotate_angle = 0

for rho, theta in lines[0]:

a = np.cos(theta)

b = np.sin(theta)

x0 = a * rho

y0 = b * rho

x1 = int(x0 + 1000 * (-b))

y1 = int(y0 + 1000 * (a))

x2 = int(x0 - 1000 * (-b))

y2 = int(y0 - 1000 * (a))

if x1 == x2 or y1 == y2:

continue

t = float(y2 - y1) / (x2 - x1)

rotate_angle = math.degrees(math.atan(t))

if rotate_angle > 45:

rotate_angle = -90 + rotate_angle

elif rotate_angle < -45:

rotate_angle = 90 + rotate_angle

print("rotate_angle : "+str(rotate_angle))

rotate_img = ndimage.rotate(img, rotate_angle)

misc.imsave('ssss.png',rotate_img)

cv2.imshow("img", rotate_img)

cv2.waitKey(0)

python身份证图片倾斜矫正_python实现证件图片倾斜矫正相关推荐

  1. python图片旋转脚本_Python+OpenCV 实现图片无损旋转90°且无黑边

    0. 引言 有如上一张图片,在以往的图像旋转处理中,往往得到如图所示的图片. 然而,在进行一些其他图像处理或者图像展示时,黑边带来了一些不便.本文解决图片旋转后出现黑边的问题,实现了图片尺寸不变的旋转 ...

  2. python opencv图片放大 缩小_Python OpenCV之图片缩放的实现(cv2.resize)

    OpenCV函数原型: cv2.resize(InputArray src, OutputArray dst, Size, fx, fy, interpolation) 参数解释: InputArra ...

  3. python批量识别图片中文字_python实现中文图片文字识别--OCR about chinese text--tesseract...

    0.我的环境: win7 32bits python 3.5 pycharm 5.0 1.相关库 安装pillow: pip install pillow 安装tesseract: 自带了英文语言包, ...

  4. python图片加水印_Python如何为图片添加水印

    添加水印的主要目的是为了版权保护,使自己的图像不被抄袭或者恶意转载.网上有很多制作水印的工具,本帖介绍怎么使用Python-Pillow库给图片添加水印. 使用ImageMagick添加图片水印-Li ...

  5. python报告水印怎么弄_Python如何为图片添加水印

    添加水印的主要目的是为了版权保护,使自己的图像不被抄袭或者恶意转载.网上有很多制作水印的工具,本帖介绍怎么使用Python-Pillow库给图片添加水印. 使用ImageMagick添加图片水印-Li ...

  6. python下载图片并保存_Python爬虫获取图片并下载保存至本地的实例

    1.抓取煎蛋网上的图片. 2.代码如下: import urllib.request import os #to open the url def url_open(url): req=urllib. ...

  7. python将图片转换为字符_python如何将图片转换为字符图片

    简介 一个简单的python程序,将图片转换为字符图片. (为了简便,很多参数写死了,自己看着改吧. (←∀←)) 正文 原图(侵删) 结果图 源码 [更多细节]-->戳这里 #-*- codi ...

  8. python实现图片格式转换_python实现批量图片格式转换

    本文实例为大家分享了python实现批量格式转换的具体代码,供大家参考,具体内容如下 深度学习过程中总是绕不开数据集的制作,有时候实际图片格式或大小可能与需要关心的图片信息不一致,那么我们只能手动做好 ...

  9. python怎么画正方体素描_python如何将图片转换素描画

    代码如下 # -*- coding:utf-8 -*- import cv2 import numpy as np from tkinter import filedialog, Tk from os ...

最新文章

  1. 服务器市场步步为营:Intel发布新款至强Xeon E5-4600v4四路处理器
  2. 数据结构与算法 | 栈
  3. php工程模式,factory - PHP工程模式如何传入参数
  4. 电路分析导论_生存分析导论
  5. [转]模拟电路设计经典教材推荐
  6. 山东科技大学计算机等级,关于2019年03月全国计算机等级考试报名工作的通知
  7. Android注解支持(Support Annotations)
  8. 操作系统实战45讲01:运行HelloOS
  9. python系统下载-深度操作系统中怎样下载python?
  10. ARM9学习笔记之——SDRAM实验
  11. 局域网下的两个 QQ 好友进行在线文件传输抓包
  12. selenium+chromedriver实现自动填写问卷星问卷
  13. iview表格序号1,2,3,4,5
  14. 新手必看!纯干货!模具设计ug开启刀具半径补偿2种方法
  15. Python学习week7_映射
  16. 网页添加飘动窗口(图片链接)+ IE8下js解析错误
  17. 《有限与无限的游戏》第五章 自然是不能言说者的王国:经典摘抄(1)
  18. 关于uni-app的iPhonex底部安全区域解决方案
  19. zabbix监控EMC VNX5500等系列存储
  20. vue中如何利用js如何检测网络状况,监听网络状态

热门文章

  1. 校园生活展示html素材,校园生活素材作文
  2. 瑜伽健身app开发的功能作用
  3. Gazebo仿真激光SLAM
  4. python布尔表达式怎么写_Python基础学习之布尔表达式
  5. mysql数据同步到es
  6. GitHub图标SVG版本
  7. 【Git】本地仓库强制覆盖远程仓库
  8. 数学分析教程史济怀练习14.1
  9. 优秀技术人,如何做到高效沟通?
  10. 网上PPT模板资源搜集整理