Amazon Elastic Transcoder
音声や動画の変換サービス。
様々な端末で再生することのある場合に必ず必要になる。
http://docs.aws.amazon.com/elastictranscoder/latest/developerguide/introduction.html
痒いところに手が届く。
// アフィン変換の未知数 | |
$a = ''; | |
$b = ''; | |
$c = ''; | |
$d = ''; | |
$l = ''; | |
$m = ''; | |
// 連立方程式を解く | |
$a = ($point[0]['x2'] * $point[1]['y1'] + $point[1]['x2'] * $point[2]['y1'] + $point[2]['x2'] * $point[0]['y1'] - $point[0]['x2'] * $point[2]['y1'] - $point[1]['x2'] * $point[0]['y1'] - $point[2]['x2'] * $point[1]['y1']) / ($point[0]['x1'] * $point[1]['y1'] + $point[1]['x1'] * $point[2]['y1'] + $point[2]['x1'] * $point[0]['y1'] - $point[0]['x1'] * $point[2]['y1'] - $point[1]['x1'] * $point[0]['y1'] - $point[2]['x1'] * $point[1]['y1']); | |
$b = ($point[0]['x1'] * $point[1]['x2'] + $point[1]['x1'] * $point[2]['x2'] + $point[2]['x1'] * $point[0]['x2'] - $point[0]['x1'] * $point[2]['x2'] - $point[1]['x1'] * $point[0]['x2'] - $point[2]['x1'] * $point[1]['x2']) / ($point[0]['x1'] * $point[1]['y1'] + $point[1]['x1'] * $point[2]['y1'] + $point[2]['x1'] * $point[0]['y1'] - $point[0]['x1'] * $point[2]['y1'] - $point[1]['x1'] * $point[0]['y1'] - $point[2]['x1'] * $point[1]['y1']); | |
$l = ($point[0]['x1'] * $point[1]['y1'] * $point[2]['x2'] + $point[1]['x1'] * $point[2]['y1'] * $point[0]['x2'] + $point[2]['x1'] * $point[0]['y1'] * $point[1]['x2'] - $point[0]['x1'] * $point[2]['y1'] * $point[1]['x2'] - $point[1]['x1'] * $point[0]['y1'] * $point[2]['x2'] - $point[2]['x1'] * $point[1]['y1'] * $point[0]['x2']) / ($point[0]['x1'] * $point[1]['y1'] + $point[1]['x1'] * $point[2]['y1'] + $point[2]['x1'] * $point[0]['y1'] - $point[0]['x1'] * $point[2]['y1'] - $point[1]['x1'] * $point[0]['y1'] - $point[2]['x1'] * $point[1]['y1']); | |
$c = ($point[0]['y2'] * $point[1]['y1'] + $point[1]['y2'] * $point[2]['y1'] + $point[2]['y2'] * $point[0]['y1'] - $point[0]['y2'] * $point[2]['y1'] - $point[1]['y2'] * $point[0]['y1'] - $point[2]['y2'] * $point[1]['y1']) / ($point[0]['x1'] * $point[1]['y1'] + $point[1]['x1'] * $point[2]['y1'] + $point[2]['x1'] * $point[0]['y1'] - $point[0]['x1'] * $point[2]['y1'] - $point[1]['x1'] * $point[0]['y1'] - $point[2]['x1'] * $point[1]['y1']); | |
$d = ($point[0]['x1'] * $point[1]['y2'] + $point[1]['x1'] * $point[2]['y2'] + $point[2]['x1'] * $point[0]['y2'] - $point[0]['x1'] * $point[2]['y2'] - $point[1]['x1'] * $point[0]['y2'] - $point[2]['x1'] * $point[1]['y2']) / ($point[0]['x1'] * $point[1]['y1'] + $point[1]['x1'] * $point[2]['y1'] + $point[2]['x1'] * $point[0]['y1'] - $point[0]['x1'] * $point[2]['y1'] - $point[1]['x1'] * $point[0]['y1'] - $point[2]['x1'] * $point[1]['y1']); | |
$m = ($point[0]['x1'] * $point[1]['y1'] * $point[2]['y2'] + $point[1]['x1'] * $point[2]['y1'] * $point[0]['y2'] + $point[2]['x1'] * $point[0]['y1'] * $point[1]['y2'] - $point[0]['x1'] * $point[2]['y1'] * $point[1]['y2'] - $point[1]['x1'] * $point[0]['y1'] * $point[2]['y2'] - $point[2]['x1'] * $point[1]['y1'] * $point[0]['y2']) / ($point[0]['x1'] * $point[1]['y1'] + $point[1]['x1'] * $point[2]['y1'] + $point[2]['x1'] * $point[0]['y1'] - $point[0]['x1'] * $point[2]['y1'] - $point[1]['x1'] * $point[0]['y1'] - $point[2]['x1'] * $point[1]['y1']); |
//============================================================================ | |
// Name : Sample243_01.cpp | |
// Author : | |
// Version : | |
// Copyright : Your copyright notice | |
// Description : Hello World in C++, Ansi-style | |
//============================================================================ | |
#include <cv.h> | |
#include <highgui.h> | |
using namespace cv; | |
int main(int argc, char** argv){ | |
Mat jpeg, gray, tmp_img; | |
jpeg = imread("your file path", 1); | |
cvtColor(jpeg, gray, CV_BGR2GRAY); | |
Mat laplacian_img; | |
Laplacian(jpeg, tmp_img, CV_32F, 3); | |
convertScaleAbs(tmp_img, laplacian_img, 1, 0); | |
namedWindow("Display Image", CV_WINDOW_AUTOSIZE); | |
imshow("Display Image", laplacian_img); | |
waitKey(0); | |
return 0; | |
} |