我如何将OpenCV rotateRect存储在数据库中

时间:2014-07-16 20:35:31

标签: database postgresql opencv

我需要将来自openCV rotateRect的数据存储到数据库中,并且还能够搜索它们。简而言之,openCV中的旋转矩形包括:

  • 一组代表矩形四角的四个点
  • 矩形旋转的角度
  • rect的中心点
  • 旋转矩形的边界框

我不确定这不仅仅是一个问题,但我认为它们很好地相互关联:

  1. 我将如何在PostgreSQL中表示这一点?一个记录将包括(以及其他字段)数百个旋转的矩形以顺序方式。这看起来合情合理吗?

    // the rotated rect type
    CREATE TYPE rotated_rect AS {
        angle real,
        points point ARRAY[4],
        center point,
        bounding_box box,
        width real,
        height real
    };
    
    // the item that will have several hundred rotated_rects
    CREATE TABLE foo {
        ...,
        rotated_rects rotated_rect[],
        ...
    };
    
  2. 我将如何搜索此数据?我希望能够将一个旋转的rect列表与每个记录中存储在数据库中的那些列表进行比较 - 很可能只是在这个阶段每个旋转的rect的中心点 - 然后选择完全匹配的记录/ s ,或者是最接近的位置。这会要求PostGIS提供空间数据吗?或者我是否必须手动将所有记录读入内存和搜索位置?

  3. 编辑:在postgresql的类型中添加了一个stab。

0 个答案:

没有答案