owlift module

class OwColor

ベースクラス: enum.Enum

カラーテーブルを表します。

GRAY

Grayscale

BLUE_ORANGE

Blue Orange

RAINBOW

Rainbow

class OwDevice(cobj, raw_play=False)

ベースクラス: object

デバイスを表します。

property agc_range

自動ゲイン制御の温度範囲(最低、最高)。 [書き込み可]

最低温度未満の温度は最低温度の色に、最高温度以上の温度は最高温度の色に切り詰められます。

Type

(float, float)

property agc_roi_mask

自動ゲイン制御のROI(Region of Interest)。 [書き込み可]

興味のない領域にある高温または低温のピクセルに引きずられて全体の色合いが平坦になるときに利用します。 値はシェイプが (フレーム高さ, フレーム幅)、型が bool か int の2次元行列です。 ピクセルの位置に対応する要素が True または 0 以外のとき、そのピクセルが計算対象になります。 全ての要素が False または 0 の行列を設定しようとすると例外が発生します。

Type

numpy.array

property alive

disconnected() と真偽逆の値。 [読み取り専用]

Type

bool

capture_start()

デバイスからのデータ取得を開始します。

capture_stop()

デバイスからのデータ取得を停止します。

property color

カラーテーブルの種類。 [書き込み可]

Type

OwColor

command_get(module_id, cmd_id_base, num_data, opt=0)

センサのコマンドをコマンドタイプ"GET"で実行し、結果のレジスタを読み込みます。 センサのコマンドについては こちらのドキュメント を参照してください。 再生中は失敗するときがあります。

  • module_id (int)

    Module ID.

  • cmd_id_base (int)

    Command ID Base.

  • num_data

    読み込むレジスタのWORD数。 読み込み可能なレジスタは DATA 0 Register .. DATA 15 Register であり、 ndata は DATA 0 Register を先頭として何個のレジスタを読み込むかを意味します。

  • opt

    使用不可。

Return

numpy.array

command_run(module_id, cmd_id_base)

センサののコマンドをコマンドタイプ"RUN"で実行します。 センサのコマンドについては こちらのドキュメント を参照してください。 再生中は失敗するときがあります。

  • module_id (int)

    Module ID.

  • cmd_id_base (int)

    Command ID Base.

command_set(module_id, cmd_id_base, data)

センサのレジスタに指定の値を書き込み、センサのコマンドをコマンドタイプ"SET"で実行します。 センサのコマンドについては こちらのドキュメント を参照してください。 再生中は失敗するときがあります。

  • module_id (int)

    Module ID.

  • cmd_id_base (int)

    Command ID Base.

  • data (numpy.ndarray)

    レジスタの値を示す numpy.uint16 型の配列。

property disconnected

デバイスが切断されたかどうか。 [読み取り専用]

Raw録画ファイル再生中のときは、ファイルの終端まで再生したかどうかを取得します。

Type

bool

enable_high_gain_mode()

High Gain モードに切り替えます。 Type-A では使用できません。

property file_time_length

Raw録画ファイルの長さ(秒単位)。 [読み取り専用]

Type

int

property firmware_version

デバイスファームウェアのバージョン。 [読み取り専用]

Type

int

property frame

温度データ、画像データ、メタデータ のタプル。 [読み取り専用]

温度データ、画像データは幅x高さの次元を持つ配列です。 温度データの各要素はケルビン値 (float) です。 Raw録画ファイル再生中、ファイル終端に達したときは (None, None, None) を返します。

Type

(numpy.array, numpy.array, OwFrameMeta)

property frame_counter

フレームカウンタ。 [読み取り専用]

Type

int

property frame_size

フレームサイズ(幅、高さ)を取得します。 [読み取り専用]

Type

(int, int)

property gain_control

ゲイン制御の種類。 [書き込み可]

Type

OwGainControl

get_active()

デバイスに再生中かどうかを問い合わせます。

Return

再生中かどうか。

property image_enabled

frame プロパティで画像を返すかどうか。 [書き込み可]

Type

bool

property magnification_enabled

画像を縦横3倍に拡大するかどうか。 [書き込み可]

Type

bool

property manual_gain_range

マニュアルゲイン制御の温度範囲(最低、最高) [書き込み可]

最低温度未満の温度は最低温度の色に、最高温度以上の温度は最高温度の色に切り詰められます。

Type

(float, float)

property noise_filter

ノイズフィルタの閾値。 [書き込み可]

閾値は温度差を意味しており、対象のピクセルとそれに近接したピクセルの温度差が 指定の閾値を超えている場合、ノイズフィルタにより平均化されます。 0 を指定するとノイズフィルタは無効になります。

Type

float

property product_id

デバイスのプロダクトID。 [読み取り専用]

Type

int

property raw_enabled

frame プロパティで温度の代わりにRawデータを返すかどうか。 [書き込み可]

Type

bool

raw_play_rewind()

Raw録画ファイル再生中に再生位置を先頭に戻します。

property raw_play_time_based_agc

Time-Based AGCが有効かどうか。 [書き込み可]

raw_play_start() により取得した OwDevice オブジェクトに対してのみ使用可能です。

Type

bool

raw_play_time_based_agc_setup(frame_num_intvl=10, from_time_offset=0, to_time_offset=0)

Raw録画ファイルから一定間隔でフレームを抽出して、 抽出したフレームを元に Time-Based AGC のセットアップを行います。

  • frame_num_intvl (int)

    フレームを抽出する間隔(何フレーム毎に抽出するか)。

  • from_time_offset (int)

    計算を開始するオフセット時間。

  • to_time_offset (int)

    計算を開始するオフセット時間。

raw_record_add()

Raw録画ファイルへ最後に frame プロパティで取得したフレームデータを追加します。

raw_record_start(file_path, frame_rate_numerator=3, frame_rate_denominator=26)

Raw録画を開始します。

  • file_path (str)

    保存先のファイルパス。

  • frame_rate_numerator (int)

    フレームレートの分子。

  • frame_rate_numerator (int)

    フレームレートの分母。

raw_record_stop()

Raw録画を停止します。

raw_to_image(raw)

Rawデータを画像に変換します。

Rawデータは raw_enabled = True の状態で frame プロパティにより取得される形式と同じです。 変換の過程において、設定に従ってノイズフィルタなどの処理が適用されます。 この関数に渡したRawデータは raw_record_add() で処理される対象に置き換わります。 すわなち frame プロパティ、raw_to_image()、raw_record_add() の順で実行すると Raw録画ファイルに追加されるフレームは raw_to_image() に渡したフレームとなります。

  • raw (numpy.array)

    Rawデータ。

Return

画像を表す配列

Return Type

numpy.array

reconnect()

ソフトウェア上でデバイスをホストから一旦切断し、再接続します。 Type-F においてはファームウェアバージョン 3.1 以降で使用可能です。

release()

デバイスを解放します。

property rgb_order

RGB形式のバイトオーダ。 True: BGR, False: RGB [書き込み可]

Type

bool

run_ffc()

FFCを実行します。

property serial_number

赤外線センサのシリアル番号。 [読み取り専用]

Type

(int, int, int, int)

set_reflection_correction_file(file)

反射補正データファイルを設定します。

反射補正は保護窓に反射するOWLIFTの像を軽減します。 反射補正データファイルは OWLIFTCap で生成してエクスポートしてください。

  • file (str)

    反射補正データファイルのパス。None を渡すと反射補正を解除します。

temp_to_image(temp)

温度データを画像に変換します。

温度データは raw_enabled = False の状態で frame プロパティにより取得される形式と同じです。 変換の過程において、ノイズフィルタなどの処理は適用されません。 温度データを加工してから画像に変換したいときに利用します。

Return

画像を表す配列

Return Type

numpy.array

property undistortion

歪み補正が有効かどうか。 [書き込み可]

デフォルト値は OWLIFT Type-A/B が False, OWLIFT Type-F が True です。

Type

bool

property upside_down_enabled

画像を180回転するかどうか。 [書き込み可]

Type

bool

property window_correction

保護窓使用時の補正の種類。 [書き込み可]

ex) ow.window_correction = owlift.OwWindowCorrectionType.GAT05_STD_HOUSING

Type

OwWindowCorrectionType

exception OwException(value)

ベースクラス: Exception

例外を表します。

property host_error

ホストエラー。 [読み取り専用]

ホストエラーは status が OwStatus.DIRECTSHOW_ERROR または OwStatus.V4L2_ERROR のときの、 プラットフォームに依存したエラーコードです。

Type

int

property status

エラーの種類。 [読み取り専用]

Type

OwStatus

class OwFrameMeta(telemetry_data, file_datetime, file_time_offset)

ベースクラス: object

フレームに付随するメタデータを表します。

property file_datetime

Raw録画ファイル再生時のタイムスタンプ。 [読み取り専用]

Type

datetime.datetime

property file_time_offset

Raw録画ファイル再生時の時間オフセット。 [読み取り専用]

Type

int

property telemetry_data

Telemetry Data。 [読み取り専用]

Type

OwTelemetryData

class OwGainControl

ベースクラス: enum.Enum

ゲイン制御の種類を表します。

MANUAL

マニュアルゲイン制御

AUTO_LINEAR

線形自動ゲイン制御

AUTO_NON_LINEAR

非線形自動ゲイン制御

class OwStatus

ベースクラス: enum.Enum

エラーコードを表します。

OK

成功。

INTERNAL_ERROR

ライブラリ内部エラー。

NO_MEMORY

メモリ不足。

DEVICE_NOT_FOUND

デバイスが見つかりません。

DEVICE_NOT_READY

デバイスの準備ができていません。

DEVICE_UNSUPPORTED

サポートされていないデバイスです。

NOT_ENOUGH_SIZE

領域のサイズが不足しています。

NOT_YET

処理がまだ完了していません。

FIRMWARE_ERROR

デバイスのファームウェアでエラーが発生しました。

SENSOR_ERROR

デバイスのセンサでエラーが発生しました。

DIRECTSHOW_ERROR

DirectShowがエラーコードを返しました。

V4L2_ERROR

V4L2がエラーコードを返しました。

NULL_POINTER

引数のポインタがNULLです。

INVALID_VALUE

引数の値が不正です。

INVALID_STATE

不正な状態で関数が実行されました。

FILE_IO_ERROR

ファイルI/Oエラーが発生しました。

INVALID_FILE_FORMAT

不正なファイルフォーマットです。

END_OF_FILE

ファイルの終端です。

INCOMPATIBLE

互換性がありません。

class OwTelemetryData(telem_bytes)

ベースクラス: object

Telemetry Data を表します。

Property

Offset

Description

telemetry_revision

0

Telemetry Revision

time_counter

1

Time Counter

status_bits

3

Status Bits

status_ffc_complete

3

Whether or not FFC state is completed which Status Bits represents

module_serial

5

Module Serial #

software_revision

13

Software Revision

frame_counter

20

Frame Counter

frame_mean

22

Frame Mean

fpa_temp_in_counts

23

FPA Temp in counts

fpa_temp_kx100

24

FPA Temp in Kelvin x 100

housing_temp_in_counts

25

Housing Temp in counts

housing_temp_kx100

26

Housing Temp in kelvin x 100

fpa_temp_ffc_kx100

29

FPA Temp at last FFC

ffc_time_counter

30

Time Counter at last FFC

housing_temp_ffc_kx100

32

Housing Temp at last FFC

reserved_b0

0

Reserved

emissivity_x8192

19

Emissivity scaled by 8192

background_temp_kx100

20

Background Temperature in kelvin x 100

atmospheric_trans_x8192

21

Atmospheric Transmission scaled by 8192

atmospheric_temp_kx100

22

Atmospheric Temperature in kelvin x 100

window_trans_x8192

23

Window Transmission scaled by 8192

window_reflect_x8192

24

Window Reflection scaled by 8192

window_temp_kx100

25

Window Temperature in kelvin x 100

window_reflect_temp_kx100

26

Window Reflected Temperature in kelvin x 100

gain_mode

5

Gain Mode

effective_gain

6

Effective Gain

gain_mode_desired_flag

7

Gain Mode Desired Flag

temp_gain_mode_threshold_h_to_l_degc

8

Temperature Gain Mode Threshold High to Low (degC)

temp_gain_mode_threshold_l_to_h_degc

9

Temperature Gain Mode Threshold Low to High (degC)

temp_gain_mode_threshold_h_to_l_k

10

Temperature Gain Mode Threshold High to Low (K)

temp_gain_mode_threshold_l_to_h_k

11

Temperature Gain Mode Threshold Low to High (K)

population_gain_mode_threshold_h_to_l

14

Population Gain Mode Threshold High to Low

population_gain_mode_threshold_l_to_t

15

Population Gain Mode Threshold Low to High

gain_mode_roi

22

Gain Mode ROI

t_linear_eabled_state

48

TLinear Enabled State

t_linear_resolution

49

TLinear Resolution

spot_meter_mean

50

Spotmeter Mean

spot_meter_max

51

Spotmeter Maximum

spot_meter_min

52

Spotmeter Minimum

spot_meter_population

53

Spotmeter Population

spot_meter_roi_start_row

54

Spotmeter ROI Start Row

spot_meter_roi_start_col

55

Spotmeter ROI Start Col

spot_meter_roi_end_row

56

Spotmeter ROI End Row

spot_meter_roi_end_col

57

Spotmeter ROI End Col

class OwWindowCorrectionType

ベースクラス: enum.Enum

保護窓使用時の補正の種類を表します。

NONE

保護窓なし

GAT05_STD_HOUSING

標準筐体 / GAT-05

devices()

デバイスの一覧を取得します。

Return

デバイス一覧。

Return Type

tuple of OwDevice

lib_version()

ネイティブライブラリのバージョンを返します。

Return

ネイティブライブラリのバージョン。

Return Type

(int, int, int)

raw_play_start(file_path)

Raw録画ファイルを再生します。

  • file_path (str)

    Raw録画ファイルのパス。

Return

Raw録画ファイルをデータソースとする仮想のデバイス。

Return Type

OwDevice