python 检测四边形,并矫正
【摘要】
# -*- coding: utf-8 -*-import osimport time import numpy as npimport cv2 #coding=utf-8import numpy as npimport cv2import os from utils.data_augment_1114 import rotate_3 class Point...
-
# -*- coding: utf-8 -*-
-
import os
-
import time
-
-
import numpy as np
-
import cv2
-
-
#coding=utf-8
-
import numpy as np
-
import cv2
-
import os
-
-
from utils.data_augment_1114 import rotate_3
-
-
-
class Point(object):
-
x =0
-
y= 0
-
# 定义构造方法
-
def __init__(self, x=0, y=0):
-
self.x = x
-
self.y = y
-
-
-
class Line(object):
-
def __init__(self, x1,y1,x2,y2 ):
-
self.p1 = Point(x1,y1)
-
self.p2 = Point(x2,y2)
-
-
def GetLinePara(line):
-
line.a =line.p1.y - line.p2.y;
-
line.b = line.p2.x - line.p1.x;
-
line.c = line.p1.x *line.p2.y - line.p2.x * line.p1.y;
-
-
def GetCrossPoint(l1,l2):
-
GetLinePara(l1);
-
GetLinePara(l2);
-
d = l1.a * l2.b - l2.a * l1.b
-
p=Point()
-
if d==0:
-
return (-1,-1)
-
else:
-
p.x = int((l1.b * l2.c - l2.b * l1.c)*1.0 / d)
-
p.y = int((l1.c * l2.a - l2.c * l1.a)*1.0 / d)
-
return (p.x,p.y)
-
# coordina
文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/jacke121/article/details/109702093
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)