누군가가 날 현명한 열의 정보를 읽고 추출하는 데 도움을 줄 수 있습니까?이미지 행을 현명하고 열 단위로 읽는 알고리즘?
제 노력은 뮤지컬 오점에서 정보를 추출하는 것입니다.
예 음악 구멍이 이미지 :
이미지 용 구멍이 여러 줄로 이루어져, I 데이터가 순차적으로 구멍이 막기 추출 할 필요가있다.
코드 스 니펫과 함께 나를 도울 수 있습니까? 알고리즘을 행 단위로 추출하려면?
누군가가 날 현명한 열의 정보를 읽고 추출하는 데 도움을 줄 수 있습니까?이미지 행을 현명하고 열 단위로 읽는 알고리즘?
제 노력은 뮤지컬 오점에서 정보를 추출하는 것입니다.
예 음악 구멍이 이미지 :
이미지 용 구멍이 여러 줄로 이루어져, I 데이터가 순차적으로 구멍이 막기 추출 할 필요가있다.
코드 스 니펫과 함께 나를 도울 수 있습니까? 알고리즘을 행 단위로 추출하려면?
당신이 무엇을해도 이미지의 정보가 "행/열 현명한"것으로 추출됩니다. 이미지가 픽셀, 즉 작은 정사각형으로 분석된다는 것을 명심하십시오. 그리고이 모든 작은 사각형을 하나씩 읽습니다.
이미지 처리에서 어려운 부분은 특정 기하학적 문제를 다루는 것입니다. 예 : 링크에서 스템브 중 하나와 같이 복잡한 모양을 읽는이 줄부터 추출합니다.
간단한 알고리즘을 제공하는 코드 (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