Giter VIP home page Giter VIP logo

bosonusb's People

Contributors

andrespmt avatar jimklingshirn avatar rustyraptor avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bosonusb's Issues

cmake . challenge

I would like to run BosonUSB on a Raspberry Pi Zero.

I can confirm, opencv is installed as well as v4l2.

However, when I run cmake . I get the following issue and I am just not knowledgeable enough to solve it.
CMake Error at CMakeLists.txt:4 (find_package):
By not providing "FindOpenCV.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "OpenCV", but
CMake did not find one.

Could not find a package configuration file provided by "OpenCV" with any
of the following names:

OpenCVConfig.cmake
opencv-config.cmake

Add the installation prefix of "OpenCV" to CMAKE_PREFIX_PATH or set
"OpenCV_DIR" to a directory containing one of the above files. If "OpenCV"
provides a separate development package or SDK, be sure it has been
installed.

-- Configuring incomplete, errors occurred!
See also "/home/pi/BosonUSB/CMakeFiles/CMakeOutput.log".
CMake Error: Unable to open check cache file for write. /home/pi/BosonUSB/CMakeFiles/cmake.check_cache

Please any guidance to solve the above, will be appreciated,

White screen on displayed video.

I compiled opencv and BosonUSB on a raspberry pi but when I run any of the commands the displayed video in the small window is all white. It shows one instant of the camera then it goes all white. Despite this when I save them with f in a folder the captured images all look fine and I can see what's on the camera. Here is what I see in console.

./BosonUSB fcap
Boson Capture and Record Video tool v1.0
FLIR Systems

use : 'BosonUSB r' to capture in raw-16 bits mode   (default)
Use : 'BosonUSB y' to capture in agc-8  bits mode
Use : 'BosonUSB z' Zoom to 640x512 (only in RAW) mode  (default ZOOM OFF)
Use : 'BosonUSB f<name>' record TIFFS in Folder <NAME>
Use : 'BosonUSB [0..9]'   to open /dev/Video[0..9]  (default 0)
Use : 'BosonUSB s[b,B]'   b=boson320, B=boson640   (default 320)
Press 'q'  to quit

>>> Folder cap selected to record files
>>> Boson_320 selected
>>> /dev/video0 selected
>>> 16 bits capture selected
>>> Image width  =320
>>> Image height =256
>>> Buffer lenght=163840

** (Boson_320 : RAW16  Linear:24535): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files

On another note it works fine on my desktop setup so I am not sure how to debug this.
And yet another note I can open the camera in VLC on the same raspberry pi and view the video just fine.

Not compiling due to deprecated enum in opencv4

Ran cmake then make and I get this

make -j12
[ 50%] Building CXX object CMakeFiles/BosonUSB.dir/BosonUSB.cpp.o
/home/ziad/Documents/src/ETV/WIND/FLIR/BosonUSB/BosonUSB.cpp: In function ‘int main(int, char**)’:
/home/ziad/Documents/src/ETV/WIND/FLIR/BosonUSB/BosonUSB.cpp:151:31: error: ‘CV_IMWRITE_PXM_BINARY’ was not declared in this scope
  compression_params.push_back(CV_IMWRITE_PXM_BINARY);
                               ^~~~~~~~~~~~~~~~~~~~~
CMakeFiles/BosonUSB.dir/build.make:62: recipe for target 'CMakeFiles/BosonUSB.dir/BosonUSB.cpp.o' failed
make[2]: *** [CMakeFiles/BosonUSB.dir/BosonUSB.cpp.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/BosonUSB.dir/all' failed
make[1]: *** [CMakeFiles/BosonUSB.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

I have opencv installed so this should work right? Is it maybe a deprecated feature of opencv being used here?

Ubuntu 18.04
OpenCV version 4.0.0-pre

Output is Grayscale

I am using the 8-bit mode. and my output is a grayscale image, is cvtcolor not working?

How to get real thermal data?

We are trying to use the thermal information and get the real temperature information.
Do you have any idea that how we can do it?

Timestamp

Do you know if there is a way to get the exact timestamp of when the images are taken, rather then when the images are received from the buffer?
Thanks!

Stream capture over network

Good evening,
Not really an issue because the code works very well, even on a raspberry. Nevertheless, I need to stream the video over network with udp and H264 compression.
Do you have any ideas how to do this inside your code ?
I tried gstreamer and V4L2 drivers but the quality and latency are too bad.

Thank you very much for your help,
Regards,

François

BosonUSB in python

Could you please provide a python example to read images in AGC 8bit mode? I would like to get 8bit images for object detection written in python.

Using BosonSDK fails to open port for Linux

Hi Everyone,

I've been trying to use the BosonSDK on Linux Ubuntu 18.04.2 LTS with the USB camera, and I have been having an issue getting the port to open. I have had success on Windows 10. I have also have success using OpenCV in Linux to read from the IR Camera.

Tried using the "make" command to remake the binary .so files. Compiled Successfully.

Running the command dmesg to find port number. This tells me that the USB device is at ttyACM0. However I'm seeing some uvcvideo issues here. The FLIR Boson camera does work in applications like Cheese.

[274557.577628] usb 1-3: USB disconnect, device number 19
[274564.366993] usb 1-3: new high-speed USB device number 20 using xhci_hcd
[274564.517588] usb 1-3: New USB device found, idVendor=09cb, idProduct=4007
[274564.517594] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[274564.517598] usb 1-3: Product: Boson
[274564.517602] usb 1-3: Manufacturer: FLIR
[274564.517606] usb 1-3: SerialNumber: 33226
[274564.519501] uvcvideo: Unknown video format 3132564e-0000-0010-8000-00aa00389b71
[274564.519513] uvcvideo: Found UVC 1.00 device Boson (09cb:4007)
[274564.521490] uvcvideo 1-3:1.0: Entity type for entity Processing 3 was not initialized!
[274564.521495] uvcvideo 1-3:1.0: Entity type for entity Camera 1 was not initialized!
[274564.522288] cdc_acm 1-3:1.2: ttyACM0: USB ACM device

The Python code that I'm running is here. Fails on the initialize method.

from BosonSDK import *
def main():
    #myport = pyClient.Initialize(manualport="/dev/ttyUSB0")  # Not Using
    myport = pyClient.Initialize(manualport="/dev/ttyACM0")  # Using from above.
    #<--- Fails Here
    pyClient.bosonRunFFC()
    result, serialnumber = pyClient.bosonGetCameraSN()
    pyClient.Close(myport)

The Failed Output, With Some additional Debug information:

Testing Code
PortNum: 16 // /dev/ttyACM0
BaudRate: 921600
Traceback (most recent call last):
File "/home/username/SVN/Code/FLIR_BosonCameraSDK/main_apitest.py", line 33, in
main()
File "/home/username/SVN/Code/FLIR_BosonCameraSDK/main_apitest.py", line 20, in main
myport = pyClient.Initialize(manualport="/dev/ttyACM0") # or manualport="COM7" on Windows
File "/media/username/data1T/SVN/Code/FLIR_BosonCameraSDK/BosonSDK/ClientFiles_Python/Client_API.py", line 20, in Initialize
uart.OpenPort(manual_port=manualport,manual_baud=manualbaud)
File "/media/username/data1T/SVN/Code/FLIR_BosonCameraSDK/BosonSDK/FSLP_Files/UART_HalfDuplex.py", line 200, in OpenPort
raise IOError("Failed to open COM port {:d}!, Portnum: {:d}, BaudRate: {:d}".format(ret,portnum,baudrate))
OSError: Failed to open COM port -1!, Portnum: 16, BaudRate: 921600

Since this issue happens in the compiled C code, It might be due to a driver issue. Any help would be appreciated. Thanks!

SDK Download Link: Click on Boson SDK & IDD, BosonSDK_rev206.zip
https://www.flir.com/support/products/boson#Resources

SDK Manual:
https://www.flir.com/globalassets/imported-assets/document/boson_sdk_documentation_9hz-v11412-and-later.pdf

Camera freezes after stream runs for ~45 seconds

I have a Boson 640 core plugged into a USB 3.0 hub, with a Flir USB 2.0 VPC. I'm running on a linux based embedded computing platform based on the aarch64 Linux 5.10 kernel (it is very similar to Debian).

I've successfully compiled the BosonUSB application for my platform, and am running the application as follows:
./Boson_USB y SB

So it is running in 8 bit YUV mode as Boson640 defaulting to video0.

After the application runs for ~45 seconds, the application freezes and there are no more frames being redisplayed or consumed from the camera.
The processor is not locked up and I am able to continue operations on the board itself.
While the application is running, dmesg is getting spammed with errors as follows:
uvcvideo: Non-zero status (-75) in video completion handler.

Device is still listed under lsusb and in /dev/video0 & 1 while the USB app is frozen.

I see this same behavior with another Boson camera on a different embedded board, so I do not believe its a specific hardware failure.

Add way to capture a certain number of frames.

It is useful to be able to but a limit on the frames in the arguments so you can capture a certain number of frames. While indeed the user could set a sleep timer to time the program it is much more difficult to write a script that stops after a certain frame.

Configuring Framerate

I am currently developing an app with the Boson 640 with the USB adapter board. I would like to have the ability to change the framerate of the camera, but so far I have been unsuccessful. What v4l commands should I use to do this? I've tried the following code and a few other things. Any help would be appreciated.

struct v4l2_streamparm parm;
parm.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
parm.parm.capture.timeperframe.numerator = 1;
parm.parm.capture.timeperframe.denominator = 30;
int ret = xioctl(fd, VIDIOC_S_PARM, &parm);

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.