6

顔の形状とその顔の再構成があり、対応する初期形状の画像をモデル化したいと考えています。

基本的には、ポイントを元の形状から顔の再構築によって示された位置に移動したいと考えています。私は薄板スプライン ワーピングを使用してこれを実行しようとしまし

しかし、それは私が望むようには機能していません。画像の角を固定し、顔を定義する対応する点を移動したいだけです。2枚の写真でこれを説明できます。最初の写真では、再構築された形状を持つ元の顔の形状を持っています。 ここに画像の説明を入力

ここには、変更したい画像と、上記のリンクのコードを使用して得られた画像があります。緑色の点は元の顔の点を示し、青色の点はそれらの新しい位置と、再配置して顔を伸ばしたい場所を示します。

ここに画像の説明を入力

私が望むのは、緑のポイントを青のポイントに移動して、変形して見えるようにすることだけです。テストしたこれを行う方法を知っていますか?

4

1 に答える 1

2

コーナーを修正するのはとても簡単です。4つの画像コーナーに4つの対応を追加するだけです。あなたの例に関して:

iP.push_back(cv::Point(0, 0));
iiP.push_back(cv::Point(0, 0));
iP.push_back(cv::Point(0, height-1));
iiP.push_back(cv::Point(0, height-1));
iP.push_back(cv::Point(width-1, 0));
iiP.push_back(cv::Point(width-1, 0));
iP.push_back(cv::Point(width-1, height-1));
iiP.push_back(cv::Point(width-1, height-1));

もちろん、 は画像の幅、高さは画像の高さです。

于 2012-10-22T21:09:35.857 に答える