问题标签 [flir]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
2208 浏览

php - sIFR 还是 FLIR?

我最近遇到了整容,它是 sIFR 的替代品,我想知道那些同时使用 sIFR 和 FLIR 的人是否可以了解他们使用 FLIR 的经验。

对于那些尚未了解 FLIR 是如何做到这一点的人来说,FLIR 的工作原理是使用 JavaScript 从目标元素中获取文本,然后调用 PHP 应用程序,该应用程序使用 PHP 的 GD 呈现并返回透明的 PNG 图像,这些图像被放置为所述元素的背景,然后将溢出设置为隐藏,并应用与元素尺寸相等的填充以有效地将文本推出视图。

这是我到目前为止所想到的:

  • 好的

    • 无闪光灯(+ 用于手机)
    • FLIR 不会破坏布局
    • 图片范围从大约 1KB(比如一个 h3 句子)到 8KB(非常非常大的标题)
    • 良好的文档
    • 易于实施
    • 可定制的选择器
    • 支持 jQuery/prototype/scriptaculous/mooTools
    • FLIR 已实施缓存
    • 浏览器自己缓存图像!
  • 坏的

    • 无法选择文本
    • 处理来自所有来源的请求(您需要自行限制 FLIR 仅处理来自您的域的请求)

我主要关心的是它的扩展性如何,也就是说,在共享主机上使用 GD 库的成本是多少,有没有人有这方面的经验?其次,搜索引擎对 sIFR 或 FLIR 实现的喜爱是什么,因为知道 a) 文本没有显式隐藏 b) 仅在 JavaScript 引擎上呈现。

0 投票
3 回答
15427 浏览

javascript - Javascript:错误“需要对象”。我无法破译。你可以吗?

我在我的一个网站中使用了一个名为“Facelift 1.2”的 javascript,虽然该脚本在 Safari 3、4b 和 Opera、OmniWeb 和 Firefox 中有效,但它不适用于任何 IE 版本。但即使在工作浏览器中,我也会收到以下错误,我无法破译。

也许在适当的时候——在 Javascript 方面有更多经验——我将能够做到,但现在我想我会问你们中的一些人,在 SO。

以下是我在 IETester 测试 Internet Explorer 6,7 和 8 页面时出现的错误弹出窗口: IE 错误弹出

以下来自 Firefox 3.0.6 中的 Firebug 控制台: Firebug 控制台日志

该网站是:http ://www.457cc.co.nz/index.php如果它可以帮助您看到实际提到的问题。

我还查找了第 620 行对应的是: “第 76 行”是:

这是这段代码的一部分(取自 flir.js):

整个脚本也可以在我的服务器上找到:http ://www.457cc.co.nz/facelift-1.2/flir.js

我只是不知道从哪里开始寻找错误,特别是因为它只影响 IE 但在其余部分有效。也许你们有一个想法。我很想听听他们的意见。

谢谢阅读。詹尼斯

PS:这是 Opera 的错误控制台报告的内容:

0 投票
2 回答
309 浏览

javascript - FLIR:避免丑陋的页面加载

我正在构建一个广泛使用FLIR以允许使用非网络安全字体的网站。然而,页面加载是一个丑陋的过程,因为首先加载每个字段的 HTML 文本版本,然后(几百毫秒后)将其替换为对应的 FLIR 图像。

有没有办法避免这种事情?几个小时后我就有了一个客户介绍,我知道它会引起人们的注意。我的情况与这个问题有关,这个问题是关于 sIFR,而不是 FLIR。有任何想法吗?

谢谢,

贾斯汀

0 投票
2 回答
365 浏览

wordpress - Wordpress FLIR(Facelift Image Replacement)插件剪裁文本结尾

我正在使用启用了 FancyFonts 的 FLIR for Wordpress 插件 (v0.8.9.2)。我正在运行 Wordpress 3.1。我遇到的问题是,插件似乎从它生成的一些文本的末尾截掉了几个像素。它并不适用于所有文本,但它发生的地方,它始终如一地发生。

这里有些例子:

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在寻找解决方案的过程中,我发现很多人都遇到了这个问题,但从来没有任何解决方案。任何想法将不胜感激。谢谢!

0 投票
1 回答
2412 浏览

c# - 显示来自 FLIR 相机的“float[,]”热图像的图像馈送

在过去的几天里,我一直在使用 FLIR Thermovision 相机,并整合了一个非常简单的应用程序,该应用程序具有在许多不同地方发现的几个方面(其中大部分在 stackoverflow 上)。

话题

  1. 在 wpf 应用程序中托管 ActiveX 组件
  2. Float[,]数组到BitmapImage
  3. MemoryStream通过使用和在 wpf 图像控件中显示绑定的位图BitmapImage

1.主动X控件

Flir Thermovision SDK 2.6 带有一个 ActiveX 组件 dll。AxCAMCTRLLib.dll。在 WinForms 应用程序中,您可以简单地将工具添加到工具箱中,然后单击组件并将其拖到表单上。这将自动添加对项目的正确引用。要在 wpf 应用程序中使用它,这是行不通的。事后看来,这似乎很容易,但没有在他们的文档中列出。

首先,我必须手动导航到 AxCAMCTRLLib.dll 并将其添加到引用中。然后在项目中添加一个新窗口。这将是一个隐藏窗口,仅用于承载 activeX 组件。这也需要 WindowsFormsIntegration 引用软管 ActiveX 组件。

现在我可以在 MainWindow 中创建、显示然后立即隐藏一个新窗口CameraCtrl并访问公共 ActiveX 控件。

OnClosingMainWindow必须修改in 方法以关闭隐藏窗口。

有了它,我现在可以访问包含在 activex 对象中的所有控制方法。

2. Float[,] 数组到BitmapImage

来自相机的输出图像可以以多种不同格式返回,但对于我使用的特定相机,它返回一个object包含float[,]. 由于它是热的,因此输出像素值表示温度。这意味着它们必须被规范化,然后首先转换为Bitmap然后存储在 a 中,MemoryStream然后添加到 a 的源中BitmapImage。我使用的方法如下。

3. 显示图像

我创建了一个简单的帮助类:

然后在 MainWindow 中创建了一个静态助手类对象(可能不需要是静态的,但我打算在其他类中使用它。)BindData bind = new BindData()并设置image1.DataContext = bind. 然后设置绑定和窗口大小以匹配我的数组:

最后使用 a 捕获图像System.Timers.Timer

private void kill_Click(object sender, RoutedEventArgs e) { continueDisplay = false; }

我在使用计时器时遇到了几件事。首先,应用程序计时和相机计时不一样,所以我在捕获开始时停止计时器并在结束后重新启动它。幸运的是,线程等待相机返回图像。这在很大程度上解决了滞后问题。其次,_image.Freeze()声明是必不可少的。没有它,您将获得“必须在与 DependencyObject 相同的线程上创建 DependencySource”。错误一旦启动。Freeze 方法使图像可用于其他线程。

0 投票
0 回答
1135 浏览

c++ - 如何在 OpenCV+ROS 下使用 Asus XTion Pro Live IR 图像映射热图像(Flir A325sc)

我想用 XTion 的深度图像映射 Flir 的热图像。由于深度图像是从 Xtions IR 相机计算出来的,我想用 Xtions IR 图像映射 Flir。

因此,我将两台相机放在彼此靠近的一个平面上(x 轴约 7 厘米,y 轴约 1 厘米,z 轴约 3 厘米)。

然后我使用 ROS Indigo 和 openCV 2.4.9 来:

  • 将 Flir Focus 设置为修复(无自动对焦)
  • 使两个图像同步。
  • 将 Xtion IR 图像的大小从 640x480 像素调整为 320x240 像素作为 Flir 图像
  • 计算两个相机的内在相机参数。(Flir + Xtion IR)
  • 计算外在参数
  • 重新映射两个图像以获得校正后的图像

我现在有两个校正后的图像,但在 X(水平方向)上仍有偏移。

如果我理解正确,由于焦距和视场不同(带物镜的 Flir:45° H x 33.8° V 和 9.66mm 焦距,XTion:58° H x 45° V),我有偏移,并且可以用透视变换解决问题,但我没有两个焦距以毫米为单位。

数据表:

  1. http://support.flir.com/DsDownload/Assets/48001-0101_en_40.pdf
  2. https://www.imc-store.com.au/v/vspfiles/assets/images/1196960_en_51.pdf
  3. http://www.asus.com/us/Multimedia/Xtion_PRO_LIVE/specifications/

我有获得焦距的想法,cv::calibrationMatrixValues但我不知道光圈和高度。

交叉邮寄

我该如何解决这个问题?

0 投票
2 回答
307 浏览

ios - 使用 Swift 从 Objective C 库中实现方法

我正在尝试快速实现以下方法:

从类 FLIROneSDKImageReceiverDelegate 中,它在我的 ViewController 类中被子类化,如下所示:

请注意,我已经创建了一个桥接头等。

在 FLIROneSDKImageReceiverDelegate 头文件中:

我认为这是实现此功能的正确方法是错误的吗?

请注意,FLIROneSDKDelegateManager 是一个类。

0 投票
1 回答
1164 浏览

image - 如何使用 eBus sdk 将来自 FLIR AX5 相机的图像保存为原始格式

简介:我正在尝试编写一个连接到 FLIR AX5(GigE Vision)相机的程序,然后定期将图像保存到我 PC 上预先指定的位置。这些图像必须是 14 位,其中包含温度信息。稍后我需要使用 openCV 处理这些图像,以从获得的温度数据中获得一些有意义的结果。

当前位置:我可以定期保存图像,但我得到的图像不包含 14 位数据,而是 8 位数据。即使在我将 PixelFormat 更改为 14 位、CMOS 和 LVDT 位深度更改为 14 位之后也是如此。我在 matlab 中检查了生成的 .bin 文件,发现最大像素值为 255,这意味着图像以 8 位格式存储。我正在使用 eBus SDK 提供的示例代码来完成这项工作。在这段代码中,我根据我的要求进行了一些更改。

请帮助以原始格式保存图像,我可以从中读取温度数据。PS 相关代码在这里。

0 投票
0 回答
131 浏览

android - 将 Java.io.File 保存到 KitKat 及更高版本上的 Android 文件系统

我正在开发一个应用程序,可以将来自 FLIR 相机的热图像保存到手机上的 SD 卡中。我正在使用 Android Marshmallow,我必须使用 FLIR SDK。

FLIR SDK 中有一个“Frame”类。该类有一个方法“Frame.save”,需要一个 Java.io.File 来保存热图像:这来自文档:

保存热 JPEG 文件,该文件具有渲染的视觉预览和嵌入的热数据

当我理解正确时,在 KitKat 或更高版本上,我必须使用 Storage Access Framework。所以我用了它。发送 Intent 并将 Uri 返回到 SD 卡上的选定文件夹。现在到棘手的部分。这个函数应该创建一个文件并返回一个为“Frame.save”方法准备好的Java.io.File。

函数返回的文件不可读取或不可写入...否则,当我尝试直接创建文件时,如下所示:

然后系统总是给我这个模拟文件夹:

所以问题是:如何获得一个可用的 Java 文件,存储在公共存储空间中......谢谢您的时间!

0 投票
1 回答
610 浏览

ios - Swift 3循环到图像的中心像素

语言:斯威夫特 3

我正在使用硬件:一部 iPhone 6 和 FLIR One 热像仪 软件:Xcode 8.1,锁定 FLIROne SDK(为 obj-c 编写和记录,几乎没有文档)

我正在尝试做的事情:从返回的相机流中获取中心像素的温度

问题:我正在构建应用程序中的所有内容并按预期工作,不包括获取此热数据。我已经能够从相机返回的流中获取温度,但是我只能获取 0,0(左上角)像素的温度。我在流输入的图像视图的中心有十字准线,我想在这个中心点(图像的确切中心)获取像素。我已经为此工作了两天,我似乎无法弄清楚如何做到这一点。SDK不允许您指定从哪个像素读取以及从我在线阅读的内容中读取,您必须循环遍历每个像素并停在中心像素。

下面的代码将从像素 0,0 获取温度并正确显示。我想获得温度来读取中心像素。温度必须是 UInt16 才能提供正确的开尔文读数(至少据我所知),但我从 Data 接收辐射数据!作为 UInt8。注意:NSData!不适用于这些代表。尝试使用它(即使在 swift 2.3 中)会导致委托永远不会触发。我必须使用数据!它甚至可以运行委托。我发现我不能使用 swift 2.3 很奇怪,因为它只有 NSData。如果这是因为我搞砸了,请告诉我。

我是 Swift 新手,所以我不确定这是否是最好的方法,所以如果你有更好的方法,请告诉我。

当前解决方案: 获取中心像素,但不是动态的(这是我想要的)