2017-05-16 31 views
0

我需要配置一個點灰度相機(FL3-U3-32S2C),其中包含一些給定的值。出於某種原因,除了圖像大小以外,一切都很完美。無法使用庫在視頻模式下設置圖像大小format7_4 dc1394

例如,下面的(非常簡化)代碼工作完美:

#include <dc1394/dc1394.h> 

int main(int argc, char *argv[]) 
{ 
    dc1394_t * d; 
    dc1394camera_t * camera; 
    dc1394camera_list_t * list; 

    // Get the camera 
    d = dc1394_new(); 
    if (!d) return 1; 
    dc1394_camera_enumerate (d, &list); 
    camera = dc1394_camera_new (d, list->ids[0].guid); 
    dc1394_camera_free_list (list); 

    // Configure 
    dc1394_video_set_mode(camera, DC1394_VIDEO_MODE_FORMAT7_4); 
    dc1394_format7_set_image_size(camera, DC1394_VIDEO_MODE_FORMAT7_4, 640, 480); 
    dc1394_camera_free(camera); 
    dc1394_free (d); 
    return 0; 
} 

但是,如果我做dc1394_format7_set_image_size(camera, DC1394_VIDEO_MODE_FORMAT7_4, 1040, 776);代替,該程序引發以下錯誤

libdc1394 error: Format_7 Error_flag_1 is set: in _dc1394_v130_handshake (format7.c, line 126): invalid image position, size, color coding or ISO speed

libdc1394 error: Format_7 Error_flag_1 is set: in dc1394_format7_set_image_size (format7.c, line 482): F7 handshake failure

這是耐人尋味的,因爲它的根據相機的technical documentation(第8.4.6節),支持的尺寸爲format7_4

所以我有點卡住了,有沒有人有一個想法,爲什麼握手失敗? :/

回答

0

在玩過不同的參數後,我意識到圖像位置在默認情況下不固定在left = 0top = 0。將它們設置爲零(dc1394_format7_set_image_position(camera, DC1394_VIDEO_MODE_FORMAT7_4, 0, 0);)可以使用最大圖像大小(format7_4下的1040 x 776就是這種情況)。

相關問題