Как я могу забить, насколько хорошо эллипс подходит для моих очков?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как я могу забить, насколько хорошо эллипс подходит для моих очков?

Сообщение Anonymous »

Здесь есть десятки ответов о том, как подготовить эллипс в ваши точки, но ни один из них не предлагает способов количественно оценить соответствие. Вот несколько моментов и эллипса, подходящего от этого ответа: < /p>
import numpy as np
from skimage.measure import EllipseModel
from matplotlib.patches import Ellipse
import matplotlib.pyplot as plt
x1 = [710.804, 710.117, 709.565, 709.036, 707.839, 707.424, 706.889, 705.913, 705.037, 704.58, 703.758,704.105, 704.552, 704.833, 705.204, 706.027, 706.932, 708.041, 708.849, 709.379, 709.797, 710.272,710.494, 710.871, 711.033, 711.018, 710.804]
y1 = [493.076, 491.902, 491.409, 490.947, 490.396, 491.456, 491.887, 492.917, 494.022, 494.882, 496.085,496.934, 497.723, 498.17, 498.656, 498.929, 499.248, 499.156, 498.768, 498.487, 497.853, 497.212,496.753, 495.957, 495.003, 493.997, 493.076]

points = list(zip(x1,y1))
print(points)
a_points = np.array(points)
x = a_points[:, 0]
y = a_points[:, 1]
ell = EllipseModel()
ell.estimate(a_points)
residuals = ell.residuals(a_points)
xc, yc, a, b, theta = ell.params

print("center = ", (xc, yc))
print("angle of rotation = ", theta)
print("axes = ", (a,b))
print('residuals= ', residuals)
fig, axs = plt.subplots(2, 1, sharex=True, sharey=True)
axs[0].scatter(x,y)
axs[1].scatter(x, y)
axs[1].scatter(xc, yc, color='red', s=100)
axs[1].set_xlim(x.min(), x.max())
axs[1].set_ylim(y.min(), y.max())
ell_patch = Ellipse((xc, yc), 2*a, 2*b, theta*180/np.pi,
edgecolor='red', facecolor='none')
axs[1].add_patch(ell_patch)
plt.show()
< /code>

center = (707.7248344321281, 495.2907644989805) < /p>
< /blockquote>

Угол вращения = 2,1051122302898926 < /p>
< /blockquote>

Axes = (4.783618808884847, 2.92938238506285) < /p>
< /blockquote >

Остатки = [0,4031933 0,60237637 0,44816215 0,03196744 0,77430711 0,00493033 0,04060345 0,07892221 0,03482433 0,04585788888888850855588558850885588558558558855885585885588508588588558588558858855885558858858855855858885888555888585585888850858885885888858585raff 0. 2794519 0,43588704 0,52172484 0,71671995 0,32973538 0,0389334
0,19938749 0,35342937 0,2419931 0,24903068 0,199892 0,184666669931 0,24903068 0,199892 0,18466666699931

< /p>
Как только я создал подгонки, я хочу рассчитать, насколько хорошо он подходит для точек. Я могу рассчитать остатки, используя функцию ellipsemodel. Я не уверен, как использовать их для этой цели, хотя. Я не могу использовать корреляцию Пирсона, поскольку она сравнивает 1D списки. Я думал, что смогу рассчитать ближайшую точку на эллипсе для каждой из моих точек, используя отношение остаточного до расстояния от точки к центру массы эллипса и соответственно преобразование x и y. Затем я подумал попробовать точечный продукт, но для этого, кажется, требуются векторы, а не точки.>

Подробнее здесь: https://stackoverflow.com/questions/727 ... -my-points
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как я могу забить, насколько хорошо эллипс подходит для моих очков?
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Какое решение для базы данных подходит для моих мобильных приложений?
    Anonymous » » в форуме Android
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Какое решение для базы данных подходит для моих мобильных приложений?
    Anonymous » » в форуме IOS
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Хотите перенести приложение Laravel в Hostinger - подходит ли это для моих требований? [закрыто]
    Anonymous » » в форуме Php
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Почему маним создает круг для набора точек, образующих эллипс?
    Anonymous » » в форуме Python
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»