简体   繁体   English

正确的描述符中位的大小正确吗? OpenCV的

[英]Correct Size of bits in brisk descriptors? opencv

I have a little problem of comprehension. 我有点理解问题。

The standard type of a Brisk descriptor Mat value in opencv is an unsigned char value with a standard size of 8 bit. opencv中Brisk描述符Mat值的标准类型是标准大小为8位的无符号char值。 A complete descriptor of a KeyPoint has a size of 16 unsigned char values. KeyPoint的完整描述符的大小为16个无符号char值。 8bitx16 = 128bit although in papers you just find out that you have a 512 bit descriptor. 8bitx16 = 128bit,尽管在论文中您发现自己有512位描述符。

Can anybody help me out of that mismatch? 有人可以帮助我摆脱这种不匹配吗? I have not found out in the OpenCV documentation if the bitsize of the descriptors is scalable (yet?). 我还没有在OpenCV文档中找到描述符的位大小是否可伸缩(还可以吗?)。

Where did you find that 16 figure? 您在哪里找到那16个数字? It seems to be wrong. 这似乎是错误的。

Mat img = imread( "lena.png", cv::IMREAD_GRAYSCALE );

BRISK brisk;
vector<KeyPoint> kp;
brisk.detect(img,kp);

Mat desc;
brisk.compute( img, kp, desc) ;
cerr << desc.rows << " " << desc.cols << " " << desc.type() << endl;

167 64 0

So, 167 BRISK descriptors a 64 bytes found (that's 512 bits per descriptor). 因此,找到了64个字节的167个BRISK描述符(每个描述符512位)。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM