python 獲取矩形內所有點座標

2021-10-04 06:52:15 字數 1429 閱讀 3294

已知影象中的兩個點(x1, y1)和(x2, y2),以這兩個點為端點畫線段,線段的寬是w。這樣就在影象中畫了乙個矩形。(由於opencv在畫直線時兩端是弧形的,所以不是嚴格意義上的矩形)。目的是計算這個矩形內所有的點座標。

import copy

import cv2

from skimage.draw import polygon

import numpy as np

x1 =

350y1 =

131x2 =

98y2 =

50w =

50tan =

(y1 - y2)

/(x2 - x1)

angle = np.arctan(tan)

points =

[y1 - w /

2* np.cos(angle)

, x1 - w /

2* np.sin(angle)])

[y2 - w /

2* np.cos(angle)

, x2 - w /

2* np.sin(angle)])

[y2 + w /

2* np.cos(angle)

, x2 + w /

2* np.sin(angle)])

[y1 + w /

2* np.cos(angle)

, x1 + w /

2* np.sin(angle)])

points = np.array(points)

rr, cc = polygon(points[:,

0], points[:,

1],(

480,

640)

)# 得到舉行中所有點的行和列

# print(rr, cc)

# 視覺化對比

GetWindowRect 獲取視窗矩形座標

1 getwindowrect,用於取視窗矩形座標。返回值型別 布林型 longbool 執行成功返回真 true 否則返回假 false 引數1型別 整數型 hwnd 目標視窗的視窗控制代碼 引數2型別 座標結構 rect 目標視窗的座標結構位址。在windows sdk中的函式原型 bool g...

Python 獲取 指定資料夾目錄內 所有檔名

import os dir g 程式設計 python list os.listdir dir 列出資料夾下所有的目錄與檔案 for i in range 0,len list path os.path.join dir,list i if os.path.isfile path print pat...

遍歷所有點的最短路徑python 所有節點最短路徑

如果您嘗試在所有節點上迴圈,可以對初始值current執行迴圈。這將需要對 進行最少的修改 nodes a b c d e f g distances a d g c e f for start in nodes current start currentdistance 0 unvisited v...