我有一組間距很近的座標。我通過使用python的image.draw.line()在它們之間繪製線來連接這些座標。但是最終得到的曲線並不平滑,因爲座標線不正確相交。我也嘗試繪製圓弧而不是線,但是image.draw.arc()不會爲座標獲取任何浮點輸入。任何人都可以建議我使用其他方法來連接這些點,以使最終曲線平滑。Python平滑曲線
1
A
回答
2
樣條是生成連接一組點的平滑曲線的標準方法。請參閱Wikipedia。
在Python中,你可以使用scipy.interpolate
來計算smoth曲線:
1
枕頭不支持多路畫一條線。如果您嘗試繪製曲拱,則無法選擇厚度!
scipy使用matplotlib繪製圖形。因此,如果直接使用matplotlib繪製直線,則可以通過axis('off')
命令關閉軸。有關更多詳細信息,請參閱: Matplotlib plots: removing axis, legends and white spaces
如果您沒有任何與座標軸有關的信息,我建議您使用OpenCV而不是枕頭來處理圖像。
def draw_line(point_lists):
width, height = 640, 480 # picture's size
img = np.zeros((height, width, 3), np.uint8) + 255 # make the background white
line_width = 1
for line in point_lists:
color = (123,123,123) # change color or make a color generator for your self
pts = np.array(line, dtype=np.int32)
cv2.polylines(img, [pts], False, color, thickness=line_width, lineType=cv2.CV_AA)
cv2.imshow("Art", img)
cv2.waitKey(0) # miliseconds, 0 means wait forever
lineType = cv2.CV_AA將繪製一條美麗的反鋸齒線。
+0
對於CV 3.0,你需要lineType = cv2.LINE_AA – wildhemp
相關問題
- 1. 平滑曲線在Python
- 2. R:完美平滑曲線
- 3. 如何平滑曲線
- 4. 繪圖R,曲線平滑
- 5. 算法來平滑曲線
- 6. gnuplot的:平滑曲線
- 7. 繪製平滑曲線
- 8. C++中的曲線平滑
- 9. 平滑貝塞爾曲線
- 10. 迭代平滑曲線
- 11. 刪除扭曲和平滑曲線
- 12. Matlab - 平滑曲線中的彎曲和鋸齒線
- 13. iPhone - 創建最平滑的曲線
- 14. 平滑手繪貝塞爾曲線
- 15. 僅平滑曲線的一部分
- 16. 如何平滑曲折線的邊緣?
- 17. 沒有用gnuplot得到平滑曲線
- 18. 尋找最平滑的曲線的15%
- 19. 按鈕中的平滑曲線
- 20. 三次/曲線平滑插補
- 21. 水平曲線滑動菜單
- 22. matplotlib中的簡單曲線平滑---相當於gnuplot的「平滑貝塞爾」?
- 23. 如何繪製平滑/圓形/曲線線圖? (C#)
- 24. Reporting Services線圖:如何更好地控制平滑曲線
- 25. Gnuplot平面曲線
- 26. Python:pyplot - 在曲線上繪製平滑曲線,並在曲線上顯示數據點
- 27. 使用scipy.interplote.interp1d和matplotlib繪製平滑曲線Python 2.7 32位(Enthought Canopy)
- 28. 如何在d3.js v4的關節點平滑兩條曲線?
- 29. 如何繪製平滑曲線以及原始數據?
- 30. Java汽車動畫平滑並採取曲線
scipy.interpolate繪製在圖上。有什麼方法在python的image.draw庫中繪製樣條曲線。 – user3005284