日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

关于matlab的图像显示方法

發(fā)布時(shí)間:2023/12/14 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于matlab的图像显示方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

關(guān)于圖像的數(shù)字表示

圖像從色彩和主要分成灰度圖像和彩色圖像,我的題目是對(duì)灰度圖像的處理,灰度圖像可以用三基色表示參數(shù)的二維數(shù)組進(jìn)行表示,對(duì)于標(biāo)準(zhǔn)的長(zhǎng)方形點(diǎn)陣取樣每一個(gè)元素表示一個(gè)圖像像素點(diǎn)的顏色信息,圖片文件一般來說就是按照數(shù)二維組排列構(gòu)成文件,然后在matlab中使用imread進(jìn)行讀取并處理。

目前已經(jīng)測(cè)試過的imread支持的格式有BMP、PNG、TIF、JPG

考慮之后方便C語言實(shí)現(xiàn)就只對(duì)BMP格式進(jìn)行深入學(xué)習(xí)

BMP格式(Bitmap)

BMP是windows操作系統(tǒng)中的標(biāo)準(zhǔn)圖像文件格式,特點(diǎn)是包含的信息比較豐富,是無損失的圖像文件格式,其投頭的格式為:

偏移量域名稱大小內(nèi)容
0000H文件標(biāo)識(shí)2識(shí)別位圖的類型
0002HFile Size4表示文件的大小,單位是B
0006HReserved4保留信息,用處目前不明只知道必須為0
000AHBitmao Data Offset4從文件開始到位圖數(shù)據(jù)之間的偏移量
000EHBitmap Header Size4位圖的信息頭的長(zhǎng)度,一般是28H
0012HWidth4位圖的寬度,單位是像素
0016HHeight4位圖的高度,單位是像素
001AHPlanes4位圖的位面數(shù),肯定是1
001CHBit per pixel2每個(gè)像素的位數(shù),1\4\8\16\24\32,分別表示2的N次方的色位,單色圖像默認(rèn)為1,即只有黑白
001EHComression4壓縮說明,0:不壓縮;1:使用8位RLE壓縮方式;2:使用4位RLE壓縮方式;3:Bitfields-位域存放方式
0022HBitmap Data SIze4用字節(jié)數(shù)字表示的位圖數(shù)據(jù)的大小,必須是4的倍數(shù)
0026HHResolution4用像素表示水平分辨率
002AHVResolution4用像素表示垂直分辨率
002EHColors4位圖使用的顏色數(shù)
0032HImportant Colors4指定的重要的顏色數(shù),當(dāng)數(shù)值等于Colors的數(shù)值的時(shí)候表示所有顏色一樣重要
____HPaletteN*4調(diào)色板規(guī)范,四個(gè)字節(jié)分別用來描述藍(lán)色、綠色、紅色和填充符的數(shù)值,在彩色圖像的處理中就是各個(gè)通道的作用
____HBitmap Data包含掃描的信息,掃描順序是從右向左,從上到下

亮度圖像

亮度圖像是一個(gè)二維數(shù)組矩陣,數(shù)據(jù)類型可以是double、uint8、uint16類型,范圍分別是[0,1]、[0,255]、[0,65535],風(fēng)別代表著二值圖像、8位RGB圖像、16位RGB圖像,對(duì)于二值圖像就應(yīng)該用double數(shù)據(jù)類型讀取數(shù)組。

關(guān)于MATLAB中文件的讀取和輸出

imread

MATLAB中主要使用imread函數(shù)從圖片中讀取圖像信息使用方法為:

[a,map]=imread['文件名']

對(duì)于BMP格式的圖片,低于24b的圖片讀取的是索引圖像,24b的BMP格式讀取的是RGB圖像,32b讀取的是24b的RGB圖像和8b的填充數(shù)據(jù)。
對(duì)于灰度圖像可以用

function[y]=readgray(I) 也有 function[y]=rgb2gray(I)可以轉(zhuǎn)化為灰度圖像

(正在嘗試使用)

imwrite

MATLAB提供了imwrite來對(duì)舉證組成的圖像文件進(jìn)行保存,調(diào)用方式為:

imwrite(A,文件名,格式)

格式可以省略,直接加在文件名后,表示灰度圖像時(shí)A表示二維舉證,當(dāng)圖像為真彩RGB圖像時(shí),A是MN3的舉證,與imread相對(duì)應(yīng)的,imwrite也可以保存為讀取相同的格式,這里嘗試了.bmp,.jpg,.png,.tif格式可正常運(yùn)行。

imshow和image

使用方法:

imshow(I)

I的要求與imwrite使用的要求一樣,直接使用imshow可以顯示出真實(shí)尺寸的圖片,像素與物理顯示器的像素對(duì)應(yīng)。
可以使用figure,imshow(X,'berder','tight');屬性控制去掉窗口的邊框。

而image函數(shù)則是附帶坐標(biāo)的圖像函數(shù)顯示,對(duì)于位圖現(xiàn)實(shí)的就是像素點(diǎn)數(shù)量

其他

參考教程找到了一段直線檢測(cè)的代碼:

clc,close BW=imread('test_1.tif'); BW=rgb2gray(BW); thresh=[0.01,0.17]; sigma=2;%定義高斯參數(shù) f = edge(double(BW),'canny',thresh,sigma); figure(1),imshow(f,[]); title('canny 邊緣檢測(cè)'); [H, theta, rho]= hough(f,'RhoResolution', 0.5); %imshow(theta,rho,H,[],'notruesize'),axis on,axis normal %xlabel('\theta'),ylabel('rho'); peak=houghpeaks(H,5); hold on lines=houghlines(f,theta,rho,peak); figure,imshow(f,[]),title('Hough Transform Detect Result'),hold on for k=1:length(lines) xy=[lines(k).point1;lines(k).point2]; plot(xy(:,1),xy(:,2),'LineWidth',4,'Color',[.6 .6 .6]); end

效果如下:

正在理解各個(gè)函數(shù)的作用。

總結(jié)

以上是生活随笔為你收集整理的关于matlab的图像显示方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。