0
有人可以幫助我讀取和提取明智和明智的圖像行信息?算法讀取一行圖像明智和列明智?
我的努力是從音樂壁中提取信息。
例五線譜圖像:
對於圖像由具有幾個板條線,我需要提取由板條數據破碎,順序。
有人可以幫我一起代碼片段嗎?要使算法逐行提取?
有人可以幫助我讀取和提取明智和明智的圖像行信息?算法讀取一行圖像明智和列明智?
我的努力是從音樂壁中提取信息。
例五線譜圖像:
對於圖像由具有幾個板條線,我需要提取由板條數據破碎,順序。
有人可以幫我一起代碼片段嗎?要使算法逐行提取?
無論你做什麼,來自圖像的信息都被提取爲「行/列明智」;請記住,圖像是從其像素進行分析的,即小方塊。它一個接一個地讀取所有這些小方格。
圖像處理的難點在於處理特定的幾何問題。例如:從這行逐行讀取一個複雜的形狀,如鏈接中的一個五線譜。這個小代碼(使用C#.NET編寫)提供了一個簡單版本的算法:它通過影響單個變量(readVertically
)逐行或逐列讀取。我想這是一個足夠好的介紹來幫助你:
private void readImage(string imagePath)
{
Bitmap imageBitMap = (Bitmap)Bitmap.FromFile(imagePath);
bool readVertically = true; //This flag tells where the image will be analysed vertically (true) or horizontally (false)
int firstVarMax = imageBitMap.Width; //Max. X
int secondVarMax = imageBitMap.Height; //Max. Y
if (!readVertically)
{
firstVarMax = imageBitMap.Height;
secondVarMax = imageBitMap.Width;
}
for (int firstVar = 0; firstVar < firstVarMax; ++firstVar)
{
for (int secondVar = 0; secondVar < secondVarMax; ++secondVar)
{
//Color of the given pixel. Here you can do all the actions you wish (e.g., writing these pixels to other file)
if (readVertically)
{
Color pixelColor = imageBitMap.GetPixel(firstVar, secondVar);
}
else
{
Color pixelColor = imageBitMap.GetPixel(secondVar, firstVar);
}
}
}
}
非常感謝你的代碼。它幫助了很多 我設法通過添加以下內容來修改您的代碼。 'byte pixel = pixelColor.B;' – hirosht
我很高興知道它已經幫助你開發出你想要的東西。 – varocarbas