2017-09-29 12 views
1

私はTagGroup(多くの個々のタグ)を持つ画像を持っています。私は画像をトリミングしたいが、同じTagGroupを保持したい。私は新しいイメージを作成し、元のタググループをこの新しいイメージにクローンしなければならないようです。タググループ全体を画像から別の画像に複製する方法は?

あまりにも遅すぎるため、タグを個別に操作したくありません。 TagGroupCopyTag(); TagGroupCopyTagsFrom(); TagGroupClone())のように、それらを全体として操作するコマンドがあることがわかりました。しかし、TagGroup全体をイメージ全体に添付するコマンドはありませんでした。これは愚かな質問かもしれませんが誰でも私にそれを教えてくれる?

おかげ

+0

まったくばかげた質問ではありません! – BmyGuest

答えて

0

あなたはそれをステップバイステップで行いたい場合は、画像、画像のその後taggroupsを取得し、コピーしてクローンするためにコマンドを使用する必要があります。

image srcImg := A 
image dstImg := B 
taggroup srcTg = ImageGetTagGroup(srcImg) 
taggroup dstTg = ImageGetTagGroup(dstImg) 
taggroup srcTgCopy = TagGroupClone(srcTg) 
TagGroupCopyTagsFrom(dstTg, srcTg) 

(。クローンを作成するか、あなたがいる限り、画像はDMで開いているよう同じ taggroup、すなわち共有メモリを取得することに注意してください)しかし、あなたは簡単にすべてのシングルにすることを「組み合わせる」ことができます同様の行:あなたの目標は、(タグやキャリブレーションを含む)画像のサブセクションの「コピー」を作成する場合

B.ImageGetTagGroup().TagGroupCopyTagsFrom(A.ImageGetTagGroup().TagGroupClone()) 

最後に、私はこのような何かをお勧めします:

image srcImg := A 
image cropped := ImageClone(srcImg[0,0,10,10]) 
ShowImage(cropped) 
+1

ああサブエリアからのImageClone()が実際にタグと較正を保持していることは驚きです。私はこの質問を投稿する前にそれをテストし、それは私に別の結果を与えた。おそらく私は間違って大腸を抜けていたでしょう。 – Roger

+0

イメージを回転してサブアレイを切り出しています。回転した画像(new:= Rotate(img、angle))はタグと較正をすでに保持していないようです。次に、TagGroupClone()を使用する必要があります。 – Roger

+0

あなたの例から、定義されたタグは実際には常に画像にリンクされているようです。タグの変更はすぐに画像に反映されます。そのため、イメージにタグを追加する代わりに(個別に行うことになる)、元のタグをイメージから取得して修正することができます。それは私には驚きです。 – Roger

関連する問題