Re: Potential integration of thermal cameras into v4l

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 7 Jan 2023 22:58:41 +0100
Sophie Friedrich <lkml@xxxxxxxxxxxx> wrote:

> Hello people,
> 
> over the past months I've written a driver for the Guide MobIR Air¹
> USB-C thermal camera. The driver uses v4l2loopback and runs in user
> space with python.² The driver manages camera state, calibration and
> conversion of the raw microbolometer to temperature values.
> 
> In my research I couldn't find any mentions of a thermal camera support
> in the Linux kernel nor the media subsystem, so I assume I'm the first
> to ask here and we would presumably need lay out some ground work.
> 
> The current camera driver outputs the temperature in the Y16 format as
> Kelvin * 100 (i.e. 28056 (raw) -> 280.56K -> 7.41°C). This allows for
> further processing down the line with i.e. OpenCV, but has its 
> limitations. Especially as temps of only up to 382.2°C can be displayed
> currently.
> 
> Does it seem feasible to integrate support for thermal cameras in the
> Linux kernel and more specifically in the v4l2 subsystem?

Hi,

since no-one else replied to you yet, I thought to mention my 2c
(I don't really do camera stuff myself so far):

Perhaps the best place is to reach out to the libcamera community:
https://libcamera.org/

It sounds to me like you want to do some hardware-specific
processing in userspace, and it might not be great to try to come
up with a generic thermal camera API at the kernel UAPI level.
That's where libcamera fits in.

As for the pixel type, maybe use a floating-point type to avoid
range/precision problems? E.g. DRM_FORMAT_R32F for application
facing API. That format does not seem to exist yet, but it's
trivial to add into kernel's drm_fourcc.h and should be well
accepted IMO.


Thanks,
pq

> 
> [1]: 
> https://www.guideir.com/products/mobileaccessories/mobirair/data_300.html
> [2]: https://github.com/tyalie/pyMobirAir-v4l2/

Attachment: pgpm2jMgYPdsJ.pgp
Description: OpenPGP digital signature


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux