
長半径がaで、短半径がbである楕円内に、ランダムに点(座標X0,Y0)をプロットし、その点から楕円周までの最短距離をperlを使って計算したいと思っています。
最終的には、最短距離の分布がどのようになっているのかを求めたいと思っています。
この計算の結果は、細胞の形を楕円に近似したときに、特定の組織の位置がランダムな場所にあるのか、細胞の表面近くに存在する傾向があるのかを調べるためのコントロールデータとして使う予定でいます。
しかし、座標X0,Y0から、楕円周までの最短距離をどのようにして計算したらよいのか見当もつきません。計算過程は省いていただいても構いませんので、最終的にどのような式を使えば計算できるのか、教えていただけないでしょうか。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
楕円の式を
(x/a)^2+(y/b)^2=1 (a≧b>0)
とおきます。
座標点(X0,Y0)を通る楕円への法線は
a(x-acosθ)sinθ=b(y-bsinθ)cosθ(0≦θ<2π)
ここで、法線と楕円との交点の座標(acosθ,bsinθ),
a(X0-acosθ)sinθ=b(Y0-bsinθ)cosθ
蛇足ですが、接線は次式で与えられます。
b(x-acosθ)cosθ+a(y-bsinθ)sinθ=0(0≦θ<2π)
ここで、接点の座標(acosθ,bsinθ),
a(X0-acosθ)sinθ=b(Y0-bsinθ)cosθ
座標点(X0,Y0)と楕円上の最短距離点は楕円上の点(acosθ,bsinθ)で
最短距離Dmin=√{(X0-acosθ)^2 +(Y0-bsinθ)^2}(0≦θ<2π)
ここで、a(X0-acosθ)sinθ=b(Y0-bsinθ)cosθ
と得られます。

分かりやすい図まで作って説明してくださってありがとうございます。
ただ、教えていただいた式を使って、X0,Y0, a, b,の4つの文字だけから成り立つDminの式を求めようとしたのですが、θがたくさん出てきてしまって手に負えません。ランダムに取得した各々の(X0,Y0)に対して、DminをPerlで計算する際には、具体的にどのような計算式を計算すればよいのでしょうか?0から2πまでθの値を変化させて求める条件を満たす値を見つける必要があるのでしょうか?大変、理解が悪くて申し訳ありません。追加で教えていただけると幸いです。
No.4
- 回答日時:
#2です。
A#2の補足の質問の回答
最終的には
>perlを使って計算したい
のであれば、
Dmin=f(X0,Y0,a,b) …(A)
((X0/a)^2+(Y0/b)^2<1,0<b<a)…(B)
なるf(X0,Y0,a,b)の理論式を求められなくても、具体的な(X0,Y0,a,b)が与えられた時
f(X0,Y0,a,b)の値を決定するアルゴリズムがあれば良いと思いますので。
理論式の導出が困難なら導出にこだわる必要は無いでしょう。
>0から2πまでθの値を変化させて求める条件を満たす値を見つける必要があるのでしょうか?
(X0,Y0)が(B)を満たす範囲の座標点なのでθの範囲は(0≦θ<2π)となりますが、
最小距離点(x0,y0)=(acosθ,bsinθ)を求める場合は(X0,Y0)と(x0,y0)つまり(cosθ,sinθ)は同じ象限に存在します。なので同じ象限のでθの範囲で考えることになります。
たとえば、(X0,Y0)が第一象限に存在する(X0≧0,Y0≧0)なら0≦θ≦π/2の範囲でθを求めることになります。ただし、Y0=0の場合はy=0(θ=0)も法線になります。X0の値によりDminが変わりますので
Dmin=Min(√((acosθ-X0)^2+(bsinθ)),a-X0)
で求めます。
θは
a(X0-acosθ)sinθ=b(Y0-bsinθ)cosθ(0≦θ≦π/2) …(C)
(sinθ)^2+(cosθ)^2=1 …(D)
で(X0,Y0)と同じ象限にあるθを考えます。θは特に求める必要はなく、同じ象限にある(cosθ,sinθ)を連立方程式を解いて求めれば十分です。このとき最小距離点は(x0,y0)=(acosθ,bsinθ)、最小距離Dminは次式で得られます。
Dmin=√((x0-X0)^2+(y0-Y0)^2)
具体的にDminを求める手順の具体例を説明すると
X0=Y0=0.5,a=2,b=1とすると、X0>0,Y0>0なので、cosθ>0,sinθ>0(0<θ<π/2)。
(C),(D)より
6cosθsinθ-2sinθ+cosθ=0
(sinθ)^2+(cosθ)^2=1
この(cosθ,sinθ)を連立にして、cosθ>0,sinθ>0を満たすものを解けば
cosθ=0.28397251163822,sinθ=0.95883233532934
と得られます。cosθ,sinθについて解くなら三角方程式でなく、普通の連立方程式を解けば良いです。この連立方程式を数値計算で解くルーチンプログラムを用意すればperlでも解けるでしょう。この(cosθ,sinθ)から最小距離点
(x0,y0)=(acosθ,bsinθ)=(0.56794502327644,0.95883233532934)
が求まるので、最小距離Dminは
Dmin=√{(X0-x0)^2+(Y0-y0)^2}=0.46383578789461
と得られえます。
このように(X0,Y0,a,b)が与えられれば,連立方程式ルーチンを使って(cosθ,sinθ)を求め、それから(x0,y0)を決まるので最小距離Dmin=√{(X0-x0)^2+(Y0-y0)^2}が求まります。
Dminの理論式を直接導いても複雑な式になって実用的ではないでしょう。数値計算を用いてDminを求めるアルゴリズムがあればperlでプログラムを組んで、最小距離Dminを求めることができるでしょう。
具体例まで掲示して、とても丁寧にDminの計算方法を教えていただきありがとうございます。おかげさまで、計算できるようになりました。
ありがとうございます。
No.3
- 回答日時:
ご質問そのものに対する適切な回答が既に出ていますんで,以下は蛇足ってか,よけいなオセワですが:
本来3次元的構造である細胞を楕円で近似しようとおっしゃるのは,つまり,「P:『細胞は厚み一定であると仮定し,上下の平らな面は表面とはみなさないものとする』という近似をする.目的のモノ(オルガネラ?)の位置(x,y)が細胞内に一様に分布すると仮定したとき,(x,y)が細胞の縁近くで見いだされる確率が,実際の細胞の形を仮定した場合に比べてこの近似では過大に見積もられることになる.それに比べてすらなお高い確率で(x,y)が細胞の縁近くで見いだされることが実測されたのであれば,これは間違いなく,(x,y)は細胞の縁近くに偏って分布していると言える」というロジックをお考えなのではなかろうか.
だとすると,Pの仮定のもとで,細胞の画像の輪郭内の領域Aの面積をSとし,輪郭からt以内の距離にある部分A(t)の面積をS(t)とすれば,細胞内に一様に分布に分布する点(x,y)が輪郭からt以内の距離にある部分に含まれる確率は,もちろん S(t)/Sとなる.そこでtとして適当な値を決めて,これをTとします.で,測定されたオルガネラの位置N個のうち,A(T)に入っているものの個数n(T)を数える.
そして,帰無仮説H(T):「S(t)/S=n(T)/N」を検定し(あわよくば)H(T)を棄却する.
というストーリーなのだろうと思います.
もしそうなら,Aを個別の細胞ごとに設定する必要はなくて,「点が測定できたすべての細胞の領域を合併したもの(つまり細胞がいっぱい写っている像)」そしてA(T)は「Aにおいて,縁から厚みTだけの部分を取り出したもの」とすれば良い訳ですから,画像処理ソフト(Imageなど)があれば,楕円による近似よりももうちょっとうまくやれそうです.
Aの二値画像P(細胞内なら1,細胞外なら0)を用意し,半径T/2の円盤状のフィルタを作用させ,さらにその画素値が1でない部分を全部0にして二値化した画像Qを作ると,これはAにおいて縁からTまでの部分を削り取った画像になりますね.そして,
画像 R = Qが0でPが1であるなら1,さもなくば0
という二値画像を作る.そうすると,AはPにおける値1の画素の数,A(T)はQにおける値1の画素の数,ということになります.Aの二値画像Pは,なにも1枚の写真である必要はなくて,倍率さえ同じなら何枚もあっても構わない.それらをくっつけて1つの画像にしたもので良いのです.
測定したオルガネラの位置を画素値1で表した画像Lを作って,
画像M = Lが1でQも1であるなら1,さもなくば0
とすれば,NはLにおける値1の画素の数, n(T)は画像Mにおける値1の画素の数.というわけで,同じ画像ベースで処理できそうに思います.
問題を数学的に整理していただき、また、具体的に顕微鏡の写真からどのように解析したらよいのかアドバイスまでしていただき、大変ありがとうございます。
ただ、ターゲットの位置は、蛍光色素でタグ付けしたものを発光させることにより、蛍光顕微鏡下で観察しているのですが、得られる画像は、非常に非常に不鮮明なものです。
そのため、二値化どころか、どれがターゲットなのかを通常の人が識別することも困難であるため、通常は慣れた研究者が、異なるZ軸で撮影したデータを見比べながら、どれが本物の点かを経験から判断して、一つ一つ手動で測定していく必要があります。
このような理由から画像処理で行うのは難しいかもしれません。
現在は、既に大量の観察済みデータが手元にあり、どのようにして有意に周辺にあるのかを検定しようかと模索しているところで、そのための比較用のデータとして今回質問させていただいた計算を利用しようと考えています。
しかしながら、領域を区切って、区切った領域の中にある画素数を数えるという考え方は、非常に参考になりました。
次回に同様の解析をする機会があるときには、その考え方を使えないか検討してみたいと思います。
数学のカテゴリーで質問したにも関わらず、画像解析についての回答までいただきありがとうございました。
No.1
- 回答日時:
「この計算の結果は~」のところの意味がよく分りませんが・・・
円周と座標(X0,Y0)の最短距離は、円周と、座標(X0,Y0)から円周に向かって延びた線が垂直に交わる円周上の点までの距離であることは間違ありません。
計算式は、座標の取り方によって異なりますが、直角三角形の辺の計算なので、直角を挟む2辺の2乗の和は、斜辺の2乗に等しい(A^2+B^2=C^2)を展開することで、距離を求められます。
回答していただき、ありがとうございました。
計算の概念が良くわかりました。
よろしければ、具体的な式も教えていただけると大変助かります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 物理学 歌口と楕円形の太鼓 1 2023/05/15 23:21
- 物理学 相対性理論と円運動について。 1 2023/01/30 11:39
- 数学 以前同じ質問をさせていただいたのですが、読み直しても理解できなかったので、再掲します。 写真は楕円の 12 2023/08/22 15:51
- Excel(エクセル) いつもお世話になっております。 円の直径290、半径145 ですが、 添付のエクセルように 座標に中 2 2023/03/14 03:34
- 物理学 どうして放物線ですか? 15 2023/06/11 09:53
- 物理学 物理 2 2023/01/17 13:31
- スピーカー・コンポ・ステレオ ワード。オブジェクトの上に半円を描くには。 2 2022/10/06 13:02
- 数学 写真は、楕円の方程式の導出が書かれたものですが、 赤線部で、「b>0とすると」と書かれていて黄線部に 6 2023/08/05 21:02
- docomo(ドコモ) 「d払いご利用可能額」とご利用明細歴」が合わないのは何故ですか? 4 2023/01/28 03:59
- 工学 いつもありがとうございます、 円盤の上に何ccの液を液滴させながら円盤を回したら液が拡がって円盤の全 5 2023/03/18 14:17
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
sin2xの微分について
-
微分お願いします
-
アークサインの微分
-
e^iθの大きさ
-
数学の問題で。。。0<θ<90 Sin...
-
tanθ=2分の1のときの sinθとcos...
-
画像のように、マイナスをsinの...
-
合成関数
-
数学
-
数学の問題です。 答えだけでい...
-
三角関数 マイナス3分のπのsinθ...
-
三角関数 sin cos tanの表につ...
-
加法定理の応用問題でcosα=√1-s...
-
sinφ(ファイ)の求め方を教えて...
-
三角関数の合成
-
次の三角比を45°以下の角の三角...
-
急いでます! θが鈍角で、sinθ...
-
三角関数です 教えてください
-
0°≦θ≦180°のとき、次の方程式、...
-
cosθの微分を幾何学的に解くサ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
sin2xの微分について
-
e^iθの大きさ
-
tanθ=2分の1のときの sinθとcos...
-
教えてください!!
-
数学の問題で。。。0<θ<90 Sin...
-
θが鈍角のとき、sinθ=4分の3の...
-
急いでます! θが鈍角で、sinθ...
-
高1 数学 sin cos tan の場所っ...
-
数学 2次曲線(楕円)の傾きの計...
-
sin(ωt+θ) のラプラス変換
-
3辺の比率が3:4:5である直...
-
画像のように、マイナスをsinの...
-
sinθ+cosθ=1/3のとき、次の式の...
-
次の三角比を45°以下の角の三角...
-
二つの円の重なっている部分の面積
-
三角関数
-
力学・くさび
-
sinθ-√3cosθをrsin(θ+α)の形...
-
式の導出過程を
-
この問題の半径rと中心核αの扇...
おすすめ情報