やりたいこと(再掲) 最終的にやりたいことは、以下の5つの機能を持つ「最強の防犯カメラ」を作ることです。機能①〜機能③は、市販されている多くの防犯カメラでも持っている機能ですが、機能④や機能⑤の顔認証機能を持つ監視カメラはまだ多くないと思います。 機能①.動画を24時間撮影し、カメラ本体に動画で記録する 機能②.動画をWebブラウザや他の機器から参照できるようにライブ配信する 機能③.動体を検知したら、静止画をLineに通知する 機能④.家族の顔を認証したら、静止画をLineに通知する 機能⑤.家族の顔を認証したら、◯◯さんおかえり!!と喋る 家に帰ると、顔を見て「○○さん、おかえり!!」と言ってくれる辺りが、スマートハウスに一歩づ近づいている気がします。 実現に向けた連載 最強の「防犯カメラ」を作成するために、以下のように少しずつに記事を書いていきます(予定)。 1回目:カメラの設定と動
はじめに こんにちは、がんがんです。 現在、実験のデモとしてFlaskとRaspberry Piを用いたデモを作成しております。 開発の環境は主にWindowsで作成しているものの、実際に動作させるのはラズパイ環境を想定しています。 ですので、スムーズに環境を移行できるようにDocker Composeを用いてFlaskアプリの環境構築をやってみようと思いました。 目次 はじめに 目次 目的 参考 環境 ファイル構成 docker-compose.ymlのセットアップ nginxのセットアップ uwsgi・Flaskのセットアップ プロジェクトの構築および実行 参考までに(Docker Hubでの検索) おわりに 目的 Docker Composeを用いてFlask × nginx × uwsgiの環境を構築 Githubはこちらです。 github.com 参考 主に下記を参考にしました
pymcprotocolのインストール PythonでMCプロトコルを扱うためのライブラリをインストールします。LXTerminalをひらいて次のコマンドを実行してください。 pip install pymcprotocol インストールは以上です。ドキュメントはこちら。 Welcome to pymcprotocol's documentation! - pymcprotocol '0.3.0' documentation LXTerminalでPythonを立ち上げてimportすることで動作確認できます。 python3 import pymcprotocol import後にエラーがなければインストールに問題はありません。 M1、M2はただのモニタ用です。編集が終わったらPLCに書き込んでRUNになっているか確認してください。MCプロトコルでの通信確認が目的ですので、ラダーは正直な
1. はじめに 今回はflaskでmultipart/form-dataによるファイルアップロードの方法について説明したいと思います。わざわざmultipart/form-dataと書いているのはRest API(json形式)におけるファイルアップロードという選択肢もあるからです。こちらについては次回説明する予定です。 なお、クライアント側については「Pythonのrequestsを利用してmultipart/form-dataのFormにファイルアップロードする方法」を参照ください。 2. ソースコード # -*- coding: utf-8 -*- from flask import Flask, request, make_response, jsonify import os import werkzeug from datetime import datetime # flas
Pythonでは、外部ライブラリのopenpyxlを利用すると、Excelファイル(*.xlsx)の読み書きやシート操作がきます。今回はプログラミング中に使い方をすぐ調べられるように簡単なコードだけでシンプルにまとめてみました。ぜひ日頃のプログラミングにご活用ください! 本記事の目次 openpyxlのインストール方法 Excelファイル(ワークブック) Excelファイルの読み込み Excelファイルの新規作成 Excelファイルの保存 ワークシート シートの取得 シート名の確認・変更 シートの追加 シートのコピー シートの削除 セル セルの取得 1つのセル 複数のセル:範囲指定 複数のセル:行指定 セルのアドレスの確認 セルの値の読み書き セルの書式設定 繰り返し処理 1シートずつ繰り返す 1行ずつ繰り返す 1行目から1行ずつ 範囲を指定して1行ずつ 応用例 openpyxlのインスト
こんにちは!ライターの遠藤です。 突然ですが、”NaN”ってご存知でしょうか? この記事では、 「NaNって何?」 「PythonでNaNの判定の仕方がわからない」 という方に向けて、 【基礎】NaNとは? 【応用】PythonにおけるNaNの判定方法 について簡潔にまとめました。 この記事を読めばNaNの意味と性質、判定方法が分かります。 ぜひ最後までお付き合いください! 本記事を読む前に、Pythonがどんなプログラミング言語なのかをおさらいしておきたい人は次の記事を参考にしてください。 → Pythonとは?特徴やできること、活用例をわかりやすく簡単に解説 なお、その他のPythonの記事についてはこちらにまとめています。 NaNとは? まずはじめにNaNの意味とは、「Not a Number」の略です。 つまり、非数ですね。 読み方はシンプルに、「ナン」です。 Noneと似ているの
datetime, date, timeオブジェクトの基本や、文字列との相互変換については以下の記事を参照。 関連記事: Pythonのdatetimeで日付や時間と文字列を変換(strftime, strptime) 本記事のサンプルコードでは、以下のようにdatetimeモジュールをインポートしている。 naiveオブジェクトとawareオブジェクト datetimeオブジェクト(日時=日付と時刻)とtimeオブジェクト(時刻)は、naiveとawareの2種類に分類される。以降のサンプルコードではdatetimeオブジェクトを例とする。 タイムゾーンについての情報を格納するtzinfo属性を持っていないのがnaiveなオブジェクトで、持っているのがawareなオブジェクト。 例えば、コンストラクタdatetime()で引数tzinfoを省略するとtzinfo属性がNoneのnaive
三菱電機株式会社製のPLCからデータを読み出す, 書き込む際には, MCプロトコルという通信プロトコルを通信フォーマットでデータのやり取りを行う必要があります. すでにQiitaにはMCプロトコルの説明や実装を紹介する記事を先駆者様たちが投稿されていましたが, この度PythonのMCプロトコルライブラリpymcprotocolを作成いたしましたので紹介いたします. PyPI: https://pypi.org/project/pymcprotocol/ APIリファレンス: https://pymcprotocol.netlify.app/pymcprotocol.html github: https://github.com/yohei250r/pymcprotocol 対応PLC Qシリーズ, Lシリーズ, QnA, iQ-R, iQ-Lシリーズに対応. iQ-RシリーズのみQシリー
WebSocket関連の勉強も兼ねて、FlaskでWebSocketを使用した簡易的なチャットの作り方を紹介していきます。ここではwebsocketとは何かという説明は致しません。 元々はfalconというフレームワークを使用して、作り方をご紹介しようと考えておりましたが、現状はWebSocket等に対応していないため、今回はFlaskを使用します。 目標としては以下のようなフロントの画面を表示して、sendボタンを押すとメッセージが送信されて、このページを開いている人全てにメッセージが届くようにするアプリケーションを作成していきます。 必要なモジュールのインストールまずはアプリケーション開発に必要なモジュール類をインストールしていきます。requirements.txtに以下のファイルを記述していきます。 Flask==1.0.2 Flask-Sockets==0.2.1 gunicor
はじめに Flask(バックエンド)とVue.js(フロントエンド)を使ってSPAの開発を行ったので,そのときの環境や手順についてまとめていきます.FlaskではSPA用のWebサーバとREST APIを動かします.Vue.jsではVue CLI 3を使って環境を構築するのと,フロントエンド単体で開発を進められるようにRESTのモックサーバなどの環境を用意します. Flaskとは Python製の軽量なWebアプリケーションフレームワークです.通常はテンプレートエンジンとしてJinja2を使ってHTMLを返す仕組みが一般的かと思いますが,今回はVue.jsとの組み合わせでSPAで開発を行います.また追加のパッケージを利用してREST APIの実装も行います. http://flask.palletsprojects.com/en/1.1.x/ Vue.jsとは WebアプリケーションのUI
gnuplotはもう嫌だ!pythonでグラフを書きたい! 以前こんな感じにRaspberry Piでセンサのデータを取得して可視化していました。 グラフ描くとき、昔ながらのgnuplotを使ったのですが、こんなコメントが。 Raspberry Pi + BME280モジュールで自動で温度・湿度・気圧を測定してグラフ化する - karaage. [からあげ] せっかくなのでグラフにしよう、と思って調べて最初にみつかったのがgnuplotだった。お、おぅ。(昔はgnuplotかなり使い込んでた)2017/02/17 19:10 ぐ、ぐぬぬ(gnuplotだけに)。やはり今どきはgnuplotはスマートじゃないのだろうか。どうせならpythonで完結したいよねということで、pythonでグラフを描く方法を調べてグラフを描いて見ました。 色々調べた結果、以下のような、いかにも「gnuplotで描
Python/matplotlibで、株価や為替のように時間とともにデータが変化していく場合、その都度グラフを更新する必要があります。 今回は一定時間間隔でグラフを再描画する方法について書きます。 まずは固定グラフを用意 今回はランダムウォークのダミーデータを使います。 import numpy as np import matplotlib.pyplot as plt plt.figure(figsize=(10,6)) step = np.random.choice([-1,1],500) arr = np.cumsum(step) plt.plot(arr) plt.show() 上のソースコードを実行すると以下のようなグラフになります。 [ad#top-1] pause()を使ってグラフを再描画(失敗編) グラフを再描画する場合は、plt.show() の代わりに plt.paus
どうやってCSVデータを操作するか 先日投稿した、「リアルタイムで温度監視」の記事にあるように、Ambientでは、データはカンマ区切りテキスト(CSV)形式で保存されており、いつでもダウンロードが可能です。AmbientのMyページをクリックすれば、リアルタイムでグラフを閲覧できますが、いくつかの課題があります。 保存したデータがずっと保管されている保証はない(ローカルにダウンロードすることが必須)。複数のWROOM-02からデータをAmbientへ送信している場合(Ambientでは、1チャンネルに8種のデータを格納できる)、得られるCSVが見にくい。違う切り口でのデータ解析はできない。 AmbientからCSVをローカルにダウンロードしておけば十分と言われればそれまでですが、データの種類が増えるほど、データを種類別にしてワークシートに保存すれば、後の解析が楽になりそうです。何万行にも
初学者ゆえ見当違いのこと書いてるかも。。 最近Pythonを利用した画像解析やWebスクレイピングに興味を持つ機会があり、プログラムを作りながら勉強しています。少し勉強した感じではインデントが意味を持ってるのがすごい好きです。 今回はOpenCVのテンプレートマッチングを利用して東方地霊殿のプレイ画面からスコアやグレイズ等の情報を取得するというツールを作成してみました。 作成したツールについて以下のようなゲーム画面からスコア、プレイヤーの残機、グレイズを取得しています。 ボスが出現しているあいだ画面左上に表示されるボス名や画面上部に表示されるスペルカード名などからゲーム中の現在地なんかを計算したりもしています。 取得したデータは最後に整形してCSV出力しています。 東方地霊殿は1280×960での起動のみに対応しています。サンプルデータを用意すれば他のサイズでも使えるかもですが保留中。現状
前回作ったアプリに任意の伝達関数を設定できる機能をつける 1. 誰に向けた記事か ・python、tkinterを勉強してる人 ・tkinterでどんなアプリが作れるのか興味がある人 ・PID制御の各パラメータがどんな影響を与えるのか直感的に理解できるアプリがあったらいいなと思ってた人 ・様々な伝達関数でPID制御を試してみたい人 ・大学の課題などでPID制御関係をやらないといけない人など 2. はじめに Part1はPID制御をGUIで操作できるアプリを作りました。 www.stjun.com またPart2ではグラフの変化を可視化できる機能をつけました。 www.stjun.com 今回はこれに伝達関数を変更できる機能を追加します。 3. コード・実行結果 3.1 コード import tkinter as tk import tkinter.ttk as ttk import ma
時代はすでに遺伝的プログラミングに移行している感がありますが、遺伝的アルゴリズム(Genetic Algorithm)をやってみます。 pythonのライブラリである『pyevolve』を使うと、笑っちゃうほど簡単にGAができちゃいます!フヒヒwwwサーセンwww ■pyevolve http://pyevolve.sourceforge.net/ それでは、早速pyevolveでナップサック問題を解いてみましょう。 ナップサック問題とは? ここに重さ20kgまで入るナップサックがあります。 そして5種類の商品があります。 重さ 価格 1kgあたりの価値 商品A 3kg ¥800 ¥266.6 商品B 5kg ¥900 ¥180 商品C 5kg ¥1,100 ¥220 商品D 7kg ¥1,200 ¥171.4 商品E 8kg ¥1,800 ¥225 (各商品は1個づつしかないものとします
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く