2016-08-24 16 views
0

イメージを別のイメージにコピーしようとしています。ターゲットのROIに置かれているソースイメージの代わりにターゲットイメージが完全に置き換えられます。ここで イメージをROIにコピー

は次のように私のコードが見えるものです:私はOpenCVの中で、これは今、しかし私はOpenCVSharpでこの演算子を見つけることができない、ROIと ()演算子を使用することによって達成されることを見出し

var output = new Mat(size, size, MatType.CV_8UC3, background); 
var temp1 = image.Resize(new OpenCvSharp.Size(targetWidth, targetHeight), 0, 0, interpolation); 
xOffset = Convert.ToInt32((size - targetWidth)/2); 
yOffset = Convert.ToInt32((size - targetHeight)/2); 
output.AdjustROI(yOffset, (size - 1) - yOffset, xOffset, (size - 1) - xOffset); 
temp1.CopyTo(output); 
output.AdjustROI(0, size - 1, 0, size - 1); 

と私はそれが何見当もつかない等価は、のように名付けられるかもしれない。

答えて

0

私は、これはOpenCVSharpでMatのコンストラクタを使用して達成されるかもしれないことを実現し、次のコードは、トリックを行うようだ:

var output = new Mat(size, size, MatType.CV_8UC3, background); 
var temp1 = image.Resize(new OpenCvSharp.Size(targetWidth, targetHeight), 0, 0, interpolation); 
xOffset = Convert.ToInt32((size - targetWidth)/2); 
yOffset = Convert.ToInt32((size - targetHeight)/2); 
var roi = new Mat(output, new Rect(xOffset, yOffset, targetWidth, targetHeight)); 
temp1.CopyTo(roi); 
関連する問題