python線段插值

 

# -*- coding: UTF-8 -*-
import cv2
import numpy as np
import os

import numpy as np
import matplotlib.pyplot as plt
xn = [10,80,80,10]
yn = [20,25,50,51]

data=[]

x_data=[]
y_data=[]
for index, x_v in enumerate(xn):


    next_index=index+1
    if index==len(xn)-1:
        next_index=0
    count=4
    if index in (0,2):
        count=12
    x=np.linspace(xn[index],xn[next_index],count,endpoint=False)
    y=np.linspace(yn[index],yn[next_index],count,endpoint=False)

    x_data.extend(x)
    y_data.extend(y)
    data.extend(zip(x,y))
    # break



print(np.array(data).shape)

for aaa in data:
    print(aaa)
plt.plot(x_data, y_data, 'ro')

plt.show()

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章