人臉檢測資料集fddb,涉及到將原標籤中的橢圓形狀轉化為矩形框用於人臉檢測,所以整理其中生成橢圓外接矩形的方法與**。
ref 1:如何計算包圍傾斜橢圓的最小矩形
explanation here:
二次曲線的二次方程可以寫成以下形式: $$ax^2+2bxy+cy^2+2dx+2ey+f=0$$
橢圓標準方程: $$frac+frac = 1$$
通過平移和旋轉,
$$x=x'costheta-y'sintheta+h,y=x'sintheta+y'costheta+k$$
此方程可以變形為: $$a'x'^2 + 2b'x'y'+c'y'^2+2d'x'+2e'y'+f'=0$$
其中$a'=acos^2theta+2bcosthetasintheta+csin^2theta$
$2b'=2bcos2theta-(a-c)sin2theta$
$c'=asin^2theta-2bcosthetasintheta+ccos^2theta$
$d'=2ahcostheta+2b(kcostheta+hsintheta)+2cksintheta+2dcostheta+2esintheta$
$e'=-2ahsintheta+2b(hcostheta-ksintheta)+2ckcostheta-2dsintheta+2ecostheta$
$f'=ah^2+2bhk+ck^2+2dh+2ek+f$
記錄$$a+c=a'+c'=h b^2-ac=b'^2-a'c'=delta left |begin a &b &d b &c &e d &e &f endright|= left |begin a' &b' &d' b' &c' &e' d' &e' &f' endright|=delta $$
是二次曲線方程係數之間的三個基本不變數。
當$delta = 0$時, 二次曲線蛻化
$delta < 0$時,點橢圓
$delta > 0$時,相交兩直線
$delta = 0$時,平行兩直線(包括相重)
當$delta ne 0$時
當 $delta < 0$ 時,二次曲線為橢圓(有可能為虛橢圓)。
當 $delta > 0$ 時,二次曲線為雙曲線。
當 $delta = 0$ 時,二次曲線為拋物線。
coefficients(conic)
coefficients command, that displays the coefficients of the conic, using the form
$$ax^2 + by^2 + c +dxy + ex + fy = 0$$
$a=a, b=d/2.0, c=b, d=e/2.0, e=f/2.0, f=c$
假設 二次曲線的二次方程為
$$ax^2+2bxy+cy^2+2dx+2ey+f=0$$
求:該橢圓的最小包圍正矩形(斜的包圍矩形)
路徑:就是要求出斜橢圓的 $x_, x_, y_, y_$
(1)用直線 $y=k$ 去截橢圓, 相交就是兩個交點,相切就是乙個交點,不相交就是無解。
故可以通過一元二次方程判別式來求解。
顯然,我們要求相切的情形。
橢圓方程可以看成關於$x$的一元二次方程:
$$ax^2+2(by+d)x+(cy^2+2ey+f)=0$$
由判別式 $delta=0$, 我們得到:
$$(by+d)^2-a(cy^2+2ey+f)=0$$
$$(b^2-ac)y^2+2(bd-ae)y+(d^2-af)=0$$
記 $delta=b^2-ac, beta=bd-ae, gamma=d^2-af$
則可以求得: $$y_ = frac}$$ $$y_ = frac}$$
(2)同理,用直線 $x=h$ 去截橢圓, 相交就是兩個交點,相切就是乙個交點,不相交就是無解。
橢圓方程可以看成關於$y$的一元二次方程:
$$cy^2+2(bx+e)x+(ax^2+2dy+f)=0$$
由判別式 $delta=0$, 我們得到:
$$(bx+e)^2-c(ax^2+2dx+f)=0$$
$$(b^2-ac)x^2+2(be-cd)x+(e^2-cf)=0$$
記 $delta=b^2-ac, alpha=be-cd, lambda=e^2-cf$
則可以求得: $$x_ = frac}$$ $$x_ = frac}$$
(3)最後得到矩形的四個頂點為$(-x_, -y_), (x_, -y_), (x_, y_), (-x_, y_)$
(4)用geogebra得到的結果
利用函式 coefficients(conic) 得到係數 轉換後,直接計算即可得到橢圓的最小包圍正矩形。
斜滑塊斜導柱計算公式 斜導柱長度計算
斜度 a一般取 5 8 度左右斜頂脫模行程 s 扣位的距離 2 3mm 安全距離 計算公式 s l x tan a 需要別人解答的題目 在斜導柱抽芯中,已知模板 h 25 斜導柱大 12。導柱階梯大小 16。抽芯角度 為度,抽芯間隔 s 5mm,請計算斜導柱長度。最合適的解答 模具滑塊的工作原理以及...
斜積分計算
最近在參考opencv自己實現haar特徵,對積分圖的計算稍微整理了一下,累加積分和平方積分就不說了,主要分析一下斜積分。這是opencv的實現方式,一下子沒整明白範圍,所以自己畫了個圖比劃了一下。從上圖看去,要計算點 x,y 上面的面積,需要遍歷上面所有的點,但是對區域中的點進行遍歷時,並不是每行...
斜滑塊斜導柱計算公式 斜齒輪加直齒輪式做法
借師說禪 當大家都哭的時候,要允許有人不哭,當大家都笑的時候,要允許有人不笑 當大家都愛的時候,要允許有人不愛 別以為這個量少,他什麼裝置都沒有,就幾個模具工。公司是他姐夫的,注塑廠,代加工企業,接到新專案後,模具部分交由他做,弄了車間配模,模具主要是自己生產。從辦公室和掛牌上看出,曾經輝煌過。當時...