风机桨叶故障诊断(一) 样本的获取
生活随笔
收集整理的這篇文章主要介紹了
风机桨叶故障诊断(一) 样本的获取
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
風機槳葉故障診斷(一) 樣本的獲取
? ? ?今天團隊接了個新項目,做一個風機槳葉故障診斷系統。雖然馬上就是準備考研的關鍵期了,可是一想到這是我學習了機器學習后遇到的第一個實際項目,我覺得參與進來,也幫導師分擔些壓力。項目不可能進展的一帆風順,這個系列文章也并不是教學性質的,我這些日子會根據項目的情況,將一步步的進展,想法都記錄在博客中,也作為技術的積累。如果有什么錯誤歡迎大家指正。
步入正題,項目需求是這樣的,駕駛汽車在風力發電廠中巡視一遍,車頂安裝攝像頭,沿途拍下所有的風機。我們的軟件對高清攝像機拍攝下的圖片/視頻進行處理,識別出圖像中的風機槳葉,然后對槳葉是否存在故障進行診斷。
經過最初的分析,我們發現這個問題還是十分棘手的,提供的條件也十分苛刻。首先,我們拿到的可以用來訓練識別算法的樣本只有短短的幾個視頻,其次,由于風機處于高速旋轉中,而且離地面的距離較遠,拍到的圖像不能做到很清晰,故障往往在圖像中只能體現成一個小黑點。就如下圖所示
故障相對于圖像來說十分小,再加上訓練樣本的不足,我們一時間沒有想出很好的識別方法(我和老師確實是糾結了好幾天了)。不過萬事開頭難,如果不一步步的去嘗試,永遠不知道行不行,所以我決定先把樣本的問題解決了,然后從要識別的槳葉入手,分析一下有什么特點,做做預處理,看看會得到什么結果。還有就是提一下,我打算不管最后軟件用什么語言實現,先用matlab進行前期的分析和實驗。 首先獲取樣本,我們拿到手的資源就僅僅是兩個模擬現場巡視拍攝下的視頻,那么準備工作的第一步就是從視頻中抽取一部分幀的圖像出來,作為我們最基本的可以提取樣本的圖像庫。 我是每隔25幀,對于我的視頻來說是1秒抽取出一張圖像,matlab實現如下: function [ ] = ProcessVideo( ) %處理視頻,每一秒提取一幀并保存%% 從視頻里面分割圖片 clc; clear; %% 讀取視頻 video_file='F:\風機槳葉故障診斷項目\視頻\視頻2.avi'; video=VideoReader(video_file); frame_number=floor(video.Duration * video.FrameRate)%% 分離圖片 for i=1:25:frame_numberimage_name=strcat('F:\風機槳葉故障診斷項目\視頻2截圖\',num2str(i));image_name=strcat(image_name,'.jpg');I=read(video,i); %讀出圖片imwrite(I,image_name,'jpg'); %寫圖片I=[]; endend
這樣,我們再人工的剔除一些沒用的圖片(比如十分模糊的,只有背景的),就得到我們可以用來提取樣本的風機圖像庫了,如下圖所示。
第一步工作完成!明天繼續~ 希望我的博客對大家有所幫助,歡迎提問和指正。轉載請注明出處 如果您也是學生,歡迎關注我們華電LSGO軟件技術團隊微信公眾平臺
故障相對于圖像來說十分小,再加上訓練樣本的不足,我們一時間沒有想出很好的識別方法(我和老師確實是糾結了好幾天了)。不過萬事開頭難,如果不一步步的去嘗試,永遠不知道行不行,所以我決定先把樣本的問題解決了,然后從要識別的槳葉入手,分析一下有什么特點,做做預處理,看看會得到什么結果。還有就是提一下,我打算不管最后軟件用什么語言實現,先用matlab進行前期的分析和實驗。 首先獲取樣本,我們拿到手的資源就僅僅是兩個模擬現場巡視拍攝下的視頻,那么準備工作的第一步就是從視頻中抽取一部分幀的圖像出來,作為我們最基本的可以提取樣本的圖像庫。 我是每隔25幀,對于我的視頻來說是1秒抽取出一張圖像,matlab實現如下: function [ ] = ProcessVideo( ) %處理視頻,每一秒提取一幀并保存%% 從視頻里面分割圖片 clc; clear; %% 讀取視頻 video_file='F:\風機槳葉故障診斷項目\視頻\視頻2.avi'; video=VideoReader(video_file); frame_number=floor(video.Duration * video.FrameRate)%% 分離圖片 for i=1:25:frame_numberimage_name=strcat('F:\風機槳葉故障診斷項目\視頻2截圖\',num2str(i));image_name=strcat(image_name,'.jpg');I=read(video,i); %讀出圖片imwrite(I,image_name,'jpg'); %寫圖片I=[]; endend
這樣,我們再人工的剔除一些沒用的圖片(比如十分模糊的,只有背景的),就得到我們可以用來提取樣本的風機圖像庫了,如下圖所示。
第一步工作完成!明天繼續~ 希望我的博客對大家有所幫助,歡迎提問和指正。轉載請注明出處 如果您也是學生,歡迎關注我們華電LSGO軟件技術團隊微信公眾平臺
總結
以上是生活随笔為你收集整理的风机桨叶故障诊断(一) 样本的获取的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LwIP应用开发笔记之三:LwIP无操作
- 下一篇: C#编写不安全代码初探