2015-09-03 12 views
0

Я полагаю, что пример Protonect в libfreenect2 должен показывать больше, чем только этот необработанный фид?Пример libfreenect2 Protonect показывает только сырую подачу?

enter image description here

Я бегу Linux Mint 17.2 и PoCL 0.11 для OpenCL на i7 4790. Система имеет LLVM-3,6 установлен. Это выход клинфо.

Number of platforms        1 
    Platform Name         Portable Computing Language 
    Platform Vendor         The pocl project 
    Platform Version        OpenCL 1.2 pocl 0.11 
    Platform Profile        FULL_PROFILE 
    Platform Extensions        cl_khr_icd 
    Platform Extensions function suffix    POCL 

    Platform Name         Portable Computing Language 
Number of devices         1 
    Device Name          pthread-Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz 
    Device Vendor         pocl 
    Device Vendor ID        0x0 
    Device Version         OpenCL 1.2 pocl 
    Driver Version         0.11 
    Device OpenCL C Version       OpenCL C 1.2 
    Device Type          CPU, Default 
    Device Profile         FULL_PROFILE 
    Max compute units        8 
    Max clock frequency        4000MHz 
    Device Partition        (core) 
    Max number of sub-devices      2 
    Supported partition types      None 
    Max work item dimensions      3 
    Max work item sizes        18446744073709551615x18446744073709551615x18446744073709551615 
    Max work group size        4096 
    Preferred work group size multiple    8 
    Preferred/native vector sizes     
    char            16/16  
    short            8/8  
    int             4/4  
    long             2/2  
    half             8/8  (n/a) 
    float            4/4  
    double            2/2  (cl_khr_fp64) 
    Half-precision Floating-point support   (n/a) 
    Single-precision Floating-point support   (core) 
    Denormals          No 
    Infinity and NANs        Yes 
    Round to nearest        Yes 
    Round to zero         No 
    Round to infinity        No 
    IEEE754-2008 fused multiply-add    No 
    Support is emulated in software    No 
    Correctly-rounded divide and sqrt operations No 
    Double-precision Floating-point support   (cl_khr_fp64) 
    Denormals          No 
    Infinity and NANs        Yes 
    Round to nearest        Yes 
    Round to zero         No 
    Round to infinity        No 
    IEEE754-2008 fused multiply-add    No 
    Support is emulated in software    No 
    Correctly-rounded divide and sqrt operations No 
    Address bits         64, Little-Endian 
    Global memory size        33643532288 (31.33GiB) 
    Error Correction support      No 
    Max memory allocation       8410883072 (7.833GiB) 
    Unified memory for Host and Device    Yes 
    Minimum alignment for any data type    128 bytes 
    Alignment of base address      128 bits (16 bytes) 
    Global Memory cache type      None 
    Image support         Yes 
    Max number of samplers per kernel    16 
pocl warning: encountered incomplete implementation in clGetDeviceInfo.c:135 
    Max size for 1D images from buffer   0 pixels 
pocl warning: encountered incomplete implementation in clGetDeviceInfo.c:137 
    Max 1D or 2D image array size     0 images 
    Max 2D image size        8192x8192 pixels 
    Max 3D image size        2048x2048x2048 pixels 
    Max number of read image args     128 
    Max number of write image args    128 
    Local memory type        Global 
    Local memory size        8410883072 (7.833GiB) 
    Max constant buffer size      8410883072 (7.833GiB) 
    Max number of constant args      8 
    Max size of kernel argument      1024 
    Queue properties         
    Out-of-order execution      No 
    Profiling          Yes 
    Prefer user sync for interop     Yes 
    Profiling timer resolution      0ns 
    Execution capabilities       
    Run OpenCL kernels       Yes 
    Run native kernels       Yes 
pocl warning: encountered incomplete implementation in clGetDeviceInfo.c:257 
    printf() buffer size       0 
    Built-in kernels         
    Device Available        Yes 
    Compiler Available        Yes 
    Linker Available        Yes 
    Device Extensions        cl_khr_fp64 cl_khr_byte_addressable_store 

NULL platform behavior 
    clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) Portable Computing Language 
    clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Success [POCL] 
    clCreateContext(NULL, ...) [default]   Success [POCL] 
    clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) Success (1) 
    Platform Name         Portable Computing Language 
    Device Name         pthread-Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz 
    clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No devices found in platform 
    clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform 
    clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform 
    clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) Success (1) 
    Platform Name         Portable Computing Language 
    Device Name         pthread-Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz 

ICD loader properties 
    ICD loader Name         OpenCL ICD Loader 
    ICD loader Vendor        OCL Icd free software 
    ICD loader Version        2.1.3 
    ICD loader Profile        OpenCL 1.2 

Любые мысли о том, что может быть неправильным? Это мой первый раз, используя OpenCL на процессоре вместо графического процессора, а также в первый раз, когда я пытаюсь что-либо сделать с Kinect, поэтому я не очень хорошо знаком. Спасибо за помощь!

ответ

1

Ваш OpenCL не имеет значения, потому что вы не используете OpenCL. На выходе вы можете увидеть OpenGLDepthPacketProcessor, который по умолчанию используется в protonect. Я думаю, что некоторые проблемы с Linux недавно появились. Попробуйте начать protonect с параметром командной строки cl:

./protonect cl 

Это должно убедиться, что используется OpenCL реализации.

Вы также можете попробовать параметр cpu, не используя ни OpenGL, ни OpenCL. Это будет медленнее, но должно по крайней мере работать, не беспокоясь о правильных драйверах OpenGL/OpenCL.

+0

Спасибо! Мне удалось запустить параметр 'cpu'. Думаю, мне просто нужно посмотреть, что я могу сделать, чтобы обновить драйверы Mesa, а также посмотреть, могу ли я использовать OpenCL. – kotakotakota