PythonでOpenCVさわってみた

OpenCV インストール PythonでOpenCVを使う@Mac - Qiita ここ参照. 基本コード # coding: utf-8 import cv2 import math import numpy as np # ファイル名の指定 file_src = '2.png' file_dst = '2.png' # 画像の読み込み img_src = cv2.imread(file_src, 1)…

Pythonでスタックとキュー

スタック class Stack: def __init__(self, stack = None,max = 100): self.max = max if type(stack) is type([]): self.stack = stack elif stack is None: self.stack = [] else: print('Please list type!\n') def push(self, e): if not self.is_full()…

Python3 文法メモ

クロージャ def closure(param): def inner(): return "Hello %s" % param return inner c1 = closure("MARIO") print(c1()) # Hello MARIO c2 = closure("LUIGI") print(c2()) # Hello LUIGI ラムダ def hello(names, func): for name in names: func(name)…

Cython 文法メモ

# ライブラリのインポート from libc.math cimport sin from libc.string cimport strcmp from libc.stdio cimport fopen,fclose,fgets,fseek,ftell,fwrite # 関数宣言 def main(): #変数宣言 cdef int a=1 cdef char* s = "Hello マリオさん。こんにちは" c…

CythonとPythonとの処理時間の比較

Pythonを高速化するCythonを使ってみた - Kesin's diary ここに書いてあることがおもしろそうだったのでやってみた. 1~100000000まで足しこむプログラム. 環境はmacで。 C #include <stdio.h> int main(){ int i,n=0; for(i=0;i<100000000;i++) n+=i; } オプションで</stdio.h>…

httpdをソースコードからインストール

CentOSで行った. インストール yum install -y gcc make pcre pcre-devel wget cd /usr/local/src wget http://ftp.yz.yamagata-u.ac.jp/pub/network/apache//apr/apr-1.5.2.tar.gz tar xzvf apr-1.5.2.tar.gz cd apr-1.5.2 ./configure --prefix=/opt/apr/a…

Pythonの文法での疑問 set list

>>> a = [set([])]*7 >>> a [set(), set(), set(), set(), set(), set(), set()] こんな感じでsetのリストを作ってa[1]だけに1を入れようとしたところ >>> a[1].add(1) >>> a [{1}, {1}, {1}, {1}, {1}, {1}, {1}] ってなるのなんでだろう...って思って Twit…

D3.js 折れ線グラフ メモ

だんだん慣れてきた. [ { "DATE": "2015/11/27 15:47:29", "TOTAL_RECORDS": 265 }, { "DATE": "2015/11/27 15:50:47", "TOTAL_RECORDS": 461 }, { "DATE": "2015/11/27 15:53:58", "TOTAL_RECORDS": 647 }, { "DATE": "2015/11/27 15:58:14", "TOTAL_RECORD…

D3.js 縦棒グラフ メモ

スケールでだいぶ苦戦した。 以下は item 18 18 0 30 47 0 1 を読み込んで縦棒グラフの作成のメモ. d3.csv(dirpath+"hoursA.csv", function(error, data){ // 描画サイズ var width = 550; var height = 200; // svgタグの定義 var svg = d3.select("#hoursA…

D3.js 基本文法

使う機会が発生したのでメモ。 D3.jsの組み込み <script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script> 基本操作 # DOM要素を指定して変数に代入 # bodyの中に、属性wisth,heightを持ったsvgタグを生成 var dataset = [11,62,23,54,33,51,32,16]; var w = 1000; var h = 300; var svg = d3.select("body").append…

Zabbixサーバ構築

CentOS 6.6で行った。 Zabbixサーバ構築 #リポジトリの登録 rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm # Zabbixサーバのインストール yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-we…

PythonでMySQL基本操作

ライブラリのインストール ここからmysql-connector-pythonのzipファイルをダウンロード. Index of Packages : Python Package Index そして、解凍先へ行って python setup.py install するだけ。 コード import mysql.connector try: cnn = mysql.connector…

MySQL 基本文法2 メモ

並べ替えと抽出 # カラム名で昇順 select * from テーブル名 order by カラム名; # カラム名で降順 select * from テーブル名 order by カラム名 desc; # グループ化->抽出 select カラム名 from テーブル名 group by カラム名 having 条件 select bang,sum(…

MySQL 基本文法 メモ

ログインとログアウト ログイン # 対話モード mysql -u username -p password # ファイルを読み込ませて実行 mysql -u username -p password -e ファイルのパス ログアウト quit or exit 設定 # ユーザの作成 create user username@localhost identified by …

各言語での実行時間計測

各言語での実行時間の計測メモ。 シェルスクリプト #!/bin/sh TIME_START=`date +%s` # start # end TIME_END=`date +%s` PT=`expr ${TIME_END} - ${TIME_START}` H=`expr ${PT} / 3600` PT=`expr ${PT} % 3600` M=`expr ${PT} / 60` S=`expr ${PT} % 60` ec…

スレッド Python

スレッドの使い方のメモ。 # coding:utf-8 import threading # スレッドクラスの継承 # 独自スレッドクラス定義 class MyThread(threading.Thread): # 初期化処理 def __init__(self): super(MyThread, self).__init__() # スレッドの処理 def run(self): pr…

統計の基礎とPython

本読みながらコード書いて勉強しています。 Rで統計したことあるけども、Pythonでも。 以下コードメモ。 # coding:utf-8 import numpy as np # データ data = np.array([34,35,47,51,58,62,81]) # 平均計算 ave = np.average(data) print(u"平均:"+str(ave)…

Python でのエラー処理

たまに忘れるんでメモ。 エラー処理 Javaなら例えば try{ # したい処理 }catch(Exception e){ # エラー処理 } というふうに書く。 Pythonなら try: # したい処理 except: # エラー処理 で、エラーのオブジェクトがほしいときは try: # したい処理 except Exc…

PowerShell上でのシャドウコピーの作成

シャドウコピーとは ここら辺参照。 Volume Shadow Copy Service (Windows) Windows用語集 - ボリューム・シャドウ・コピー:ITpro シャドウコピーとは|shadow copy|シャドーコピー - 意味/解説/説明/定義 : IT用語辞典 作成 (Windows8) シャドウコピーを…

PowerShell メモ

Power Shell ISEなんか使いにくい。 実行環境 スクリプトを実行できるようにする。 Windows Power Shellを管理者権限で起動し以下を入力する。 Set-ExecutionPolicy RemoteSigned で、ポリシーを変更するとスクリプトを処理できるようになる。 Hello World e…

スクレイピング Python

メモ。 import urllib2 from bs4 import BeautifulSoup html = urllib2.urlopen("http://www.oreilly.co.jp/index.shtml") soup = BeautifulSoup(html,"lxml") list = soup.find_all("a") for i in list: print i.string,i.get("href")

Python で Windows cmd.exe 上でコマンド実行

cmd.exe起動して、python main.py とかして実行. import subprocess for i in range(100): cmd = "dir" subprocess.call(cmd,shell=True) 100回dirされるだけ。 どうやら、 vssadmin list shadows みたいな管理者権限チックなコマンドの場合、動かないときが…

ネットワークプログラミング Python

ネットワークプログラミングメモ netaddr ライブラリ とりあえずインストール sudo pip install netaddr そして、 >>> from netaddr import IPNetwork >>> for i in IPNetwork("192.168.0.0/24"): ... print i ... 192.168.0.0 192.168.0.1 192.168.0.2 〜省…

指定ディレクトリ以下の画像ファイル名を再帰的にすべて取得するプログラム (Ruby)

http://carumisu.hatenablog.com/entry/2015/11/03/201748 のRuby版。 require "find" require 'rubygems' require 'RMagick' def GetImageList(mydir) imageList = [] Find.find(mydir) do |f| if File::ftype(f) == "file" begin Magick::Image.read(f).fi…

指定ディレクトリ以下の画像ファイル名を再帰的にすべて取得するプログラム (Python)

os.walkを使えば再帰的にディレクトリ探索ができる. 「今調べている最中のディレクトリ名」「見つかったディレクトリのリスト」「見つかったファイルのリスト」を返すらしい(参考文献より)。 # coding: utf-8 import os,imghdr,shutil def get_image_list(pa…

NTFSの複数のデータランの先頭アドレスの算出

NTFSでは、MFTレコードにファイルのメタデータを格納していく。 そこに、ファイルのデータ本体の場所の先頭アドレスを示すパラメータがある。 ファイルがフラグメントを起こしてしまうと複数のデータランで構成されてしまう。 そのデータランの内の「ファイ…

Android プログラミング メディア

サウンド public class MediaPlayerEx extends Activity implements View.OnClickListener{ private final static int WC = LinearLayout.LayoutParams.WRAP_CONTENT; private final static String TAG_BGM = "bgm"; private final static String TAG_SE = "…

Android プログラミング デバイス制御2

カメラ まず、Manifest.xmlの変更。 <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> ~省略~ android:screenOrientation="landscape" > Acitvityのほう。 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanc…</uses-permission></uses-permission>

NTFSのタイムスタンプ

どうやらNTFSでは1601年1月1日0時0分からの100ナノ秒単位でタイムスタンプを計算しているらしい。 バイナリエディタなどで16進数で表現されたときにMACTimeなどを読めるように変換するときのプログラムのメモ. # coding: utf-8 import datetime val = 0x01d1…

Android プログラミング デバイス制御

センサ public class SensorEx extends Activity implements SensorEventListener{ private final static String BR = System.getProperty("line.separator"); private final static int WC = LinearLayout.LayoutParams.WRAP_CONTENT; private TextView tex…