c++ - 复制 Simd::View 的一部分

标签 c++ image algorithm image-processing simd-library

我使用 Simd::View来自 Simd Library 的类(class).它是一个保存图像的容器。我需要将图像的一部分(右下角)复制到另一个图像中。

据我所知,有一个函数 Simd::Copy这允许将一个图像复制到另一个图像。但它将整个图像复制。当然,我可以编写自己的函数来执行此操作。但也许有人知道这个问题的任何好看的解决方案?

最佳答案

我建议使用方法 Simd::View::Region .它返回对给定图像中子区域的引用。 因此,您可以使用 Simd::Copy 轻松复制此子区域。 :

#include "Simd/SimdLib.hpp"

int main()
{
    typedef Simd::View<Simd::Allocator> View;
    View a(200, 200, View::Gray8);
    View b(100, 100, View::Gray8);
    // Copying of a part (the rigth bottom corner) of image a to the image b:
    Simd::Copy(a.Region(b.Size(), View::RightBottom), b);
    return 0;
}

关于c++ - 复制 Simd::View 的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51062856/

相关文章:

c++ - 在编码程序中使用自己的堆栈类 - 确定大小和顶部

c++ - taglib、C++、标签修改

javascript - 如何缩放图像以覆盖整个父 div?

algorithm - 编译器设计的算法?

c++ - 通用引用和打包字段

c++ - 这个异步技巧会起作用还是当我访问它时状态会悬空?

php - 检查字符串是否为图像

jQuery 核心 : display a floating image

algorithm - 折线的优雅 "Left-of"测试

c# - 减少纬度和经度点数量的最快方法