質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.51%

  • Webサイト

    1272questions

    一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

産業用カメラを用いたビューワのWebシステム構築

解決済

回答 4

投稿 編集

  • 評価
  • クリップ 2
  • VIEW 644

soma62jp

score 91

前提・実現したいこと

産業用カメラを用いたビューワのWebシステム構築

課題

こちらのような産業用カメラを用いてWeb上でのビューワシステムの構築を検討しています。

上記のようなメーカーはSDKを配布していて、それを使用すればクライアントアプリ(Windows)上ではビューワの作成は簡単に行なえますが、一般的にそのようなカメラでのWebアプリ化は可能でしょうか?
クライアントPCにはカメラのドライバをインストールしてUSBで接続しているものとします。

1.問題なく可能
2.限定された条件では可能
3.不可

実現したい機能
1.ブラウザから画像の明るさ、ホワイトバランスなどを制御可能
2.ブラウザからカメラのトリガー信号を取得して画像を取得
3.ブラウザからカメラのトリガー信号を取得して動画を取得
4.クライアントPC(Windows)からネットワーク上の共有フォルダへアクセスして画像を保存

以上、知見のある方、具体的な方法も含め、ご教授のほどよろしくお願いいたします。

補足情報(言語/FW/ツール等のバージョンなど)

実現がより簡単な方法があれば、特に問いません。
上記の場合であれば、C#を検討していますが、よりおすすめの言語もあれば、ご教授ください。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 4

checkベストアンサー

+1

こんにちは。

産業用システムでは、7年前にVB.net ver3.5でWindowsネイティブアプリですが、車両重量計のRS-232Cシリアル通信での連動アプリを作った経験が少しある程度の人間です。なので的外れな回答になるかもしれません。

結論から言うと、一部SDKを叩いたり、情報を取得・Webブラウザ向きに変換するサーバーサイドライブラリをC#などで自作する可能性はあると思いますが、可能だと思います。ということで2番が近いかと。

SDKがあるということですから、

  1. ブラウザからAjaxやWebSocket、ブラウザのGETやPOSTなどで命令を受信し、ご要望の機能を制御できるAPIを作ります。
  2. 必要があれば動画フォーマットを変換するライブラリをサーバーサイドC#で取り込んで、それを利用します。
  3. クライアントはWebブラウザになると思いますが、JavaScriptで工程1で作ったAPIを叩く様なアプリを作ればできあがり。

こんな流れかと思います。実際の動作としては、クライアントマシンにC#製のAPIプログラムが常駐して、それをWebブラウザで叩くイメージです。モダンじゃないかもしれませんが、一つのマシン内でクラサバシステムを構築するイメージです。

Webクライアントに関しては、JavaScriptは癖のある言語ですので躓くかもしれません。ということで、知人の作ったde.jsというライブラリの紹介を最後にしてして回答とさせていただきます。

de.js / Github

以上です。お役に立てば幸いです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/08/04 09:50 編集

    回答ありがとうございます。
    一応は可能ということですね。

    追加で質問で申し訳ありませんが、

    ・他に制限が発生するのでしょうか?
    ・クライアントPC(Windows)からネットワーク(イントラネット)上の共有フォルダへアクセスして画像を保存
    は可能でしょうか?

    以上、ご回答いただければ幸いです。

    キャンセル

  • 2017/08/04 10:01

    とりあえずメモリが256MB、プロセッサがPentium3や4の初期世代マシンでWindowsXPとかでない限り、パスの指定がちゃんとできればすんなりいくと思います。

    (過去にVB6案件で似たようなことをやり、開発環境では動作→本番環境では処理落ちによるハングアップを目撃したものの、それ以前に損害賠償手前までの納期遅延をしたため、上司に報告しなかった前科が個人的にありまして……)

    キャンセル

  • 2017/08/04 10:04

    回答ありがとうございます。
    一応実現可能という認識で、理解いたしました。

    キャンセル

+1

何が出来るかは、カメラの機能と、メーカーが提供しているSDKの機能によって制限されます。

Webアプリ化というのは、
カメラはサーバーPC(遠隔)に接続されている。
クライアントPCとサーバーPCはインターネットで接続されている(プロトコルはHTTP)。
という機器構成になっていて、クライアントPCからカメラの操作(例えば、質問にある1,2,3)ができるようなソフトウェアをクライアントPCとサーバーPCのそれぞれに構築する事です。

質問には、「クライアントPCにはカメラのドライバをインストールしてUSBで接続」と書かれていますが、クライアントPCに直結されたカメラの操作については、SDKを利用してソフトウェアが構築可能なはずです。
また、クライアントPCだけで完結しているのであれば、Webアプリ、とは呼びません。

何が知りたいのでしょうか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/08/04 09:30 編集

    >Webアプリ化というのは、
    >カメラはサーバーPC(遠隔)に接続されている。
    >クライアントPCとサーバーPCはインターネットで接続されている(プロトコルはHTTP)。
    >という機器構成になっていて、クライアントPCからカメラの操作(例えば、質問にある1,2,3)ができるようなソフトウェアをクライアントPCとサーバーPCのそれぞれに構築する事です。

    ご指摘の通りであれば、上記の質問は「Webアプリ」に該当しません。
    クライアント側にカメラが接続されていて、そのアプリ自身をWebブラウザから制御するイメージです。

    >また、クライアントPCだけで完結しているのであれば、Webアプリ、とは呼びません。

    ご指摘の通り、現在クライアントPCで完結しているアプリを、サーバー上に置いてクラウド化可能かどうか?という問題です。

    よくWebカメラの監視システムなどは、ブラウザから操作可能ですが、それを産業用カメラのSDKを用いて
    Activex?等を用いて制御できないかと考えた次第です。

    キャンセル

+1

カメラと接続したPCでカメラ制御可能なアプリが開発できるなら、それを中継アプリとして別アプリとつなげる発想になりますかね

その別アプリをWebサーバアプリで作れば、ネットワーク越しのクライアント端末からブラウザなりスマホアプリなりでカメラ制御も可能と思います

カメラ画像の提供は、上記でいう中継アプリで取り込み画像の保存ができるかどうかでしょうね
JPEGやMPEGの保存ができるなら問題なさそうですが、できないなら画面に表示しているものを間接的にキャプチャするツールを作るか世の中にあるものを利用するか

といった感じに、スマートかどうかは別としてあれこれどうにかすれば実現できそうかなーと思います

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/08/04 09:51

    回答の程ありがとうございます。
    一応は実現しそうですね。

    キャンセル

+1

実現したい内容であれば、開発するよりネットワークカメラを購入した方がコストが低いと思います。
例のカメラであれば
ace USB3 シリーズ
ではなく
ace GigE シリーズ
ではダメなのでしょうか。

実現したい機能以外でサーバが必要になる理由があるのでしょうか。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/08/04 10:00 編集

    回答ありがとうございます。
    装置の制約上、クライアントPCとカメラはUSBで接続する必要があります。

    クライアントアプリだけをクラウド化し、データをサーバ上で保存し、アプリのアップデートを一元化したいのですが、
    上記のカメラを使用することでよりスマートに実現可能であれば、ネットワークカメラも選択肢に含めたいと思います。

    キャンセル

同じタグがついた質問を見る

  • Webサイト

    1272questions

    一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。