質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

深層学習

深層学習は、多数のレイヤのニューラルネットワークによる機械学習手法。人工知能研究の一つでディープラーニングとも呼ばれています。コンピューター自体がデータの潜在的な特徴を汲み取り、効率的で的確な判断を実現することができます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Q&A

解決済

1回答

1219閲覧

横断から台形断面を近似したい。AIなどで。

Seven_Sea

総合スコア23

Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

深層学習

深層学習は、多数のレイヤのニューラルネットワークによる機械学習手法。人工知能研究の一つでディープラーニングとも呼ばれています。コンピューター自体がデータの潜在的な特徴を汲み取り、効率的で的確な判断を実現することができます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

0グッド

0クリップ

投稿2021/10/13 11:18

編集2021/10/13 23:47

横断座標から台形断面の座標を機械学習などAIで推定したい。

説明変数としては各横断のX座標とY座標が断面数分あります。
目的変数は、そこから推定される台形断面のX座標とY座標(断面ごとに4点です。)

これらを推定するには、どのような手法でやればよろしいでしょうか?

ちなみに、なるべくなら画像化は避けたいです。

よろしくお願いいたします。

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

can110

2021/10/13 11:38

とりあえず「横断座標」とは何か? 「台形断面」とはどのような空間からどのような面で「切った」ものなのか? などを含めて詳しい情報を教えていただければと思います。
Seven_Sea

2021/10/14 00:10 編集

横断は複数断面あって、1断面、XY座標が300個で構成されています。 そこから推定したい台形は4点(XとYそれぞれ、4個ずつ)です。 よろしくお願いいたします。
toast-uz

2021/10/14 13:21 編集

台形=2辺が並行という定義ですが、図の例は違いますね。台形ではなく四角形でよいでしょうか? また図ではx軸+40と少しより右は赤線が無く、近似を途中で打ち切っていますね。この判断基準は何でしょうか?極端には左右が極力短い「四角形」を描けば、誤差はとても小さくなると思います。その優劣はどうやってつけますか?
Seven_Sea

2021/10/15 00:16

すいません、図が悪かったですね。 2辺は並行でよいです。
guest

回答1

0

ベストアンサー

データに対して,端点を共有する3つの線分を同時に当てはめるような話 だと見えます.

↓(やや詳述)

「台形」を形作る4点の座標
(ただしそのうちの2つの点のy座標は同一である,という話と見えるので,パラメータの個数としては7個なのかな?)
を与えたとき,
その「台形の(データに対する)良さ」とは何なのか? というのをまずは(あなたが)定義する必要があるでしょう.
(y座標だけのずれを見るのか,線分からデータ点までの距離を見るのか,その他なのか)

で,それに従って,誤差評価関数
E( 横断座標データ, 4点の座標 )
を用意して,
これを最小化する問題の形にしてしまえば良いのではないでしょうか.

7つのパラメータの間には互いに制約(「ある点のx座標 < 別の点のx座標」みたいな)がある形なので,
制約付き最適化を解くための何らかの方法を探してくればよいでしょう.
(使えそうなライブラリ(?)とかを見つけてくるなり,あるいは話だけ見つけてきて自前で実装するなり)

投稿2021/10/14 01:12

fana

総合スコア11996

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fana

2021/10/14 01:20 編集

質問に貼られている画像を見ると, 「台形(オレンジ色)の左右の端の位置の決め方」にも何らかの前提がありそうに見える. すなわち,【与えられたデータ群(青)すべてが「台形」部分だということではなく,データ群の一部のみが「台形」に属し,他は「台形」ではない箇所である】ということである様子とも見える. だとすると,「どこからどこまでが台形なのか?」という観点が必要なのかも. でもそれはどうやって評価するんだろう? っていうことを考えるには,問題固有の知識が必要なのではなかろうか. (人間が事前にデータをトリミングしてやるぜ! とかできる話であれば,何の心配もなかろうが…)
fana

2021/10/14 01:27 編集

斜面部分と底面部分とで誤差の重みは同じなのか? とか,いろいろと細かい話がありそうな気もする.
Seven_Sea

2021/10/14 02:57 編集

いろいろアドバイスありがとうございます。 まだまだ、理解していない部分も多く、これから言われたことを 学んでいくつもりでいます。 単純に、説明変数はこれですよー、目的変数はこれですよみたいな 単純な話で行けるかなと思っていました。。。 正解の座標値(台形の)もあるので。 浅はかでした。 現状、手作業で4点を決めている状態(図を見ながら) どうにか自動化したいなという思いもあり、 横断を単純化してから台形にもってけないかなど苦労中なのです。 ありがとうございます。
fana

2021/10/14 03:07

データ点群(複数個の (x,y) )に対する直線の当てはめ(フィッティング) みたいな話についてまずは調べると良いのかもしれません. 点群はおおよそ直線上に並んでいるけども個々の座標にはノイズが乗っているような状態に対して,直線を推定するような話です. で,この回答の内容は,今回の台形の話を【3本の線分(図でオレンジ色で示されている)を点群データに同時に当てはめるような話と捉えた話】ということです.
fana

2021/10/14 03:09

「何かを1mm単位でスライスした」的な,「すぐ隣の断面」みたいなデータがあるような場合は, 個々の断面で独立した処理を行うのではなく,3次元のデータとして扱う方が良いのかもしれませんが,そこらへんはやってること次第です.
Seven_Sea

2021/10/16 00:27

一応、エクセルのソルバーで一旦、計算して 制約条件って何があるのかを考えてみます。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問