1. 程式人生 > >Matlab 讀寫yuv檔案

Matlab 讀寫yuv檔案

clear all; clc;

fid = fopen('Data/Testing/down.yuv','r'); %讀入檔案
fod = fopen('Data/Testing/test.yuv','w'); %輸出文件
row=768/2;col=1024/2; %圖像的高、寬
frames=97; % total=97 %序列的幀數

for frame=1:frames
 %讀入檔案 將yuv轉換為rgb,並用imshow顯示
  %  im_l_y=fread(fid,[row,col],'uchar');  %錯誤的讀入
    im_l_y = zeros(row,col); %Y
    for
i1 = 1:row im_l_y(i1,:) = fread(fid,col); %讀取資料到矩陣中 end im_l_cb = zeros(row/2,col/2); %cb for i2 = 1:row/2 im_l_cb(i2,:) = fread(fid,col/2); end im_l_cr = zeros(row/2,col/2); %cr for i3 = 1:row/2 im_l_cr(i3,:) = fread(fid,col/2); end %由於輸入的yuv檔案為4
:2:0,所以CbCr要改變大小, %否則im_l_ycbcr(:, :, 2) =im_l_cb;會出現錯誤 im_l_cb = imresize(im_l_cb, [row, col], 'bicubic');%改變影象的大小 im_l_cr = imresize(im_l_cr, [row, col], 'bicubic'); im_l_ycbcr = zeros([row, col, 3]); im_l_ycbcr(:, :, 1) = im_l_y; im_l_ycbcr(:, :, 2) = im_l_cb; im_l_ycbcr(:, :, 3
) = im_l_cr; im_l = ycbcr2rgb(uint8(im_l_ycbcr)); %將YCbCr轉換為rgb % figure, imshow(im_l);title('Down'); %輸出文件 將rgb轉換為yuv im_t_ycbcr = rgb2ycbcr(im_l); %將rgb轉換為YCbCr im_t_y = im_t_ycbcr(:, :, 1); %Y im_t_cb = im_t_ycbcr(:, :, 2); %Cb im_t_cr = im_t_ycbcr(:, :, 3); %Cr im_l_cb = imresize(im_l_cb, [row/2, col/2], 'bicubic');%改變影象的大小 im_l_cr = imresize(im_l_cr, [row/2, col/2], 'bicubic'); for i1 = 1:row fwrite(fod,im_l_y(i1,:)); %輸出到檔案中 end for i1 = 1:row/2 fwrite(fod,im_l_cb(i1,:)); end for i1 = 1:row/2 fwrite(fod,im_l_cr(i1,:)); end end

相關推薦

Matlab yuv檔案

clear all; clc; fid = fopen('Data/Testing/down.yuv','r'); %讀入檔案 fod = fopen('Data/Testing/test.yuv',

Matlabxml檔案

xml檔案以文件物件模型表示,簡稱DOM(Document Object Model)。在Matlab中,使用xmlread讀取xml檔案成DOM節點,對xml檔案的操作轉化成對DOM節點的操作,使用xmlwrite把DOM節點寫入到xml檔案中。 Matla

matlabtxt檔案中的資料並畫圖

  oclusion: 3D(Base frame): [ c2 c3 c4 ] = textread('zd3(x).txt',' %f  %f  %f ',102) ; plot3(c2,c3,c4,':.b'); axis([min(c2),max(c2),min(c

MatlabTIFF格式檔案

1、簡介 通常情況下,使用MATLAB做影象處理後,使用下面的命令就可以儲存處理結果為圖片。 imwrite(im,'im.bmp'); 而如果需要儲存的影象為single或者double型別,或儲存的影象超過RGB三個通道時,則不能使用imwrite來直接進行,此時需要將矩

<轉>MatlabTIFF格式文件

tla dev its hot efi width esc 顏色 encoding 1、簡介 通常情況下,使用MATLAB做圖像處理後,使用下面的命令就可以保存處理結果為圖片。 imwrite(im,‘im.bmp‘); 而如果需要保存的圖像為single或者doub

Pythontxt檔案時的編碼問題

  這個問題來自於一個小夥伴,他在處理中文資料時需要先把裡面的文字過濾然後分詞,因為裡面有許多符號,不僅是中文標點符號,還有✳,emoji等奇怪的符號。   正常情況下,中文的str經過encode('utf-8')變成bytes,然後bytes經過decode('utf-8')變回中文。   原始檔案是

GDAL向量檔案——Python

GDAL讀寫向量檔案——Python   在Python中使用OGR時,先要匯入OGR庫,如果需要對中文的支援,還需要匯入GDAL庫,具體程式碼如下。Python建立的shp結果如圖1所示。 圖1 Python建立向量結果    

STL 使用ofstream + ifstream csv檔案

csv檔案,每行的資料是用逗號分隔的,讀寫csv檔案的示例程式碼如下: #include "stdafx.h" #include <iostream> #include <string> #include <vector> #include <fst

C#中INI檔案的方法例子

[DllImport(“kernel32”)] private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); [DllImp

pythoncsv檔案方法總結

python提供了大量的庫,可以非常方便的進行各種操作,現在把python中實現讀寫csv檔案的方法使用程式的方式呈現出來。 1、使用csv讀寫csv檔案方法總結 reader()函式是一個閱讀器把閱讀的CSV檔案每一行以一個列表表示出來以至於你可以用for迴圈來遍歷他 讀檔案的時候,開啟檔

(C/C++)(/)(二進位制檔案/文字檔案)

C++寫二進位制檔案 std::ofstream fout("a.dat", std::ios::binary); int nNum = 20; std::string str("Hello, world"); fout.wr

java json檔案

json檔案放在maven工程的resource 的html 檔案下面 package com.dl.utils; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUt

13: openpyxl xlsx檔案

1.1 openpyxl 基本使用   1、openpyxl 將xlsx讀成json格式 #! /usr/bin/env python # -*- coding: utf-8 -*- # -*- coding: utf-8 -*- import json from open

Java:使用DOM4j來實現XML檔案中的屬性和元素

DOM4可以讀取和新增XML檔案的屬性或者元素 讀取屬性: public static void ReadAttributes() throws DocumentException { File file = new File("D:\\cmz\\java\\XMLTest\\Custom

Java:簡單的XML檔案之使用DOM4J

Dom4J方式解析XML檔案。dom4j是非官方提供的xml檔案解析方式,因此需要去第三方下載dom4j的jar包 File file = new File("D:\\chengmuzhe\\java\\JavaOOP6.0\\students.xml"); SAXReader reader = n

Swift plist 檔案

在MacOS專案中使用Swift管理plist,實現讀寫plist檔案。 1. Jobs.swift 使用Jobs類管理Jobs.plist // Jobs.swift // Created by Cyril on 18/7/11. // Copyright © 2018年

java實現伺服器檔案

https://github.com/MAXIAODONGS/Remote-operation-of-static-resources 這個主要實現java遠端訪問伺服器的讀寫檔案操作,自動登入讀寫檔案,以上程式碼整理來自網際網路,然後自己將很多瑣碎的東西整理在了一起 pom.xml要配置

Python.csv檔案

# encoding: UTF-8 import csv # 讀取csv檔案 stocks_list = [] #方式一 # file = open(u'../Output.csv', u"r") # data = csv.reader(file) # 返回的是迭代型別 #方式二 with

C++XML檔案(libxml2庫)

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

量化之路--configparser配置檔案中的坑

python3 中需要使用引入新版的configparser,而非ConfigParser 讀寫前都要用read()開啟配置檔案,假如用add_section()就直接涼了,因為後者會直接清空配置檔案,只留下一條你在後面set()的鍵值對。 1.如果要更新一個section: