You are on page 1of 6

bai-tap-4

July 18, 2023

[45]: import numpy as np


import matplotlib.pyplot as plt
import cv2
import math

[46]: img = cv2.imread('goc.jpg')


img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
plt.imshow(img)
plt.show()

[47]: gray=cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)
plt.imshow(gray,'gray')

1
plt.show()

[48]: corners=cv2.goodFeaturesToTrack(gray,100,0.01,20)
corners=np.int0(corners)
for corner in corners:
x,y=corner.ravel()
cv2.circle(img,(x,y),5,(255,0,0),-1)
plt.imshow(img)
plt.show()

2
[49]: corner1=tuple(corners[29][0])
corner2=tuple(corners[19][0])
cv2.line(img,corner1,corner2,(0,0,255),3)
plt.imshow(img,'gray')
plt.show()

3
[50]: corner1=tuple(corners[29][0])
corner3=tuple(corners[40][0])
cv2.line(img,corner1,corner3,(0,0,255),3)
plt.imshow(img,'gray')
plt.show()

4
phương trình đường thẳng 1:đi qua corner 1 và corner 2
337=177a+b và 27=204a+b
b=377-177a và 27=204a+377-177a
b=377-177a và -350=27a
b~377+2293 và a ~-13
b~2670 và a ~-13
=> y(1)=-13x(1)+2670
phương trình đường thẳng 2:đi qua corner 1 và corner 3
377=177a+b và 82=447a+b
b=377-177a và 82=447a+377-177a
b=377-177a và -255=270a
b=377+177 và a~-1
b=554 và a~1
=> y(2)=-x(2)+554

5
[51]: def phuongtrinh(x1,y1,x2,y2):
a=math.fabs(((x1*x2)+(y1*y2)))
b=math.sqrt(((x1)**2)+((y1)**2))
c=math.sqrt(((x2)**2)+((y2)**2))
d=a/(b*c)
print("~",math.degrees(d),"độ")
return
he_so_goc=phuongtrinh(13,1,1,1)

~ 43.50219888297404 độ

You might also like