#include
using
namespace std;
intmain
(int argc,
char
* ar**)
elseif(
fopen_s
(&qcifptr, qcifname,
"wb")==
0)else
// 計算原rgb影象總位元組數和總幀數
fseek
(cifptr,0l,
seek_end);
cifsize =
ftell
(cifptr)
;rewind
(cifptr)
; cout <<
"the space that "
<< cifname <<
" accounts for is "
<< cifsize <<
" bytes = "
<<
(double
)cifsize /
1024
/1024
<<
" mb."
<< endl;
qcifsize = cifsize /2;
framenum = cifsize / cifframesize;
cout <<
"there are "
<< framenum <<
" frames in this video clip."
<< endl;
// 按幀建立緩衝區
cifybuf =
newunsigned
char
[cifframesize *2/
3]; cifubuf =
newunsigned
char
[cifframesize /6]
; cifvbuf =
newunsigned
char
[cifframesize /6]
; qcifybuf =
newunsigned
char
[qcifframesize *2/
3]; qcifubuf =
newunsigned
char
[qcifframesize /6]
; qcifvbuf =
newunsigned
char
[qcifframesize /6]
;// 逐幀處理
for(
int i =
0; i < framenum; i++
)// 控制幀數
}// u、v分量下變換
for(
int j =
0; j < cifh /
2; j +=2
)}fwrite
(qcifybuf,
sizeof
(unsigned
char
), qcifframesize *2/
3, qcifptr)
;// 寫入第i幀的y分量
fwrite
(qcifubuf,
sizeof
(unsigned
char
), qcifframesize /
6, qcifptr)
;// 寫入第i幀的y分量
fwrite
(qcifvbuf,
sizeof
(unsigned
char
), qcifframesize /
6, qcifptr)
;// 寫入第i幀的y分量
}delete
cifybuf;
delete
cifubuf;
delete
cifvbuf;
delete
qcifybuf;
delete
qcifubuf;
delete
qcifvbuf;
fclose
(cifptr)
;fclose
(qcifptr)
;}
ububtu下caffe訓練並驗證cifar10
在跑完mnist資料集後,想跑一下cifar10,發現網上介紹的資料不多,有些步驟有點麻煩,因此就參考訓練mnist資料集的方法對cifar10資料進行訓練,最後得到了訓練結果。sudo sh data cifar10 get cifar10.sh可以看到在cifar10資料夾下多了一些檔案。二 轉...
matlab練習程式(矩形變換為圓)
最近對影象座標的變換很感興趣啊,這次是將一張影象變換為圓形。變換原理就是按變換前後畫素到圓心的距離按比例縮減就行了。改變x,y方向上的係數,應該還可以變換為橢圓,不過我還沒有嘗試。注意我這裡相當於縮小影象了,所以用的是正向插值,如果想生成乙個大圓,還是需要逆向插值的。原圖如下 處理後效果 matla...
抽象下的變換
三年前的高二和去年的大一我都想過乙個問題,平面曲線xy k和a x 2 b y 2 h可能 重合 嗎?去年剛剛學習解析幾何,我的理解是通過變換x x y,y x y,變換矩陣t 1,1 1,1 如下 這兩支曲線的轉變與所作的變換方程有關,而且是確定的。但就是如此簡單的問題,我高中時可想了很久的,那時...