PDA

View Full Version : ساختن عکس در grid form



jafari263
یک شنبه 19 آذر 1391, 19:14 عصر
سلام
من یک عکس دارم . می خواهم همون عکس را در grid form( بصورت جدول) بسازه , یعنی همون عکس را در قالب grid بسازه.( با استفاده از pattern matching)
چطور میتونم این کار رو انجام بدم؟

با تشکر

مصطفی ساتکی
دوشنبه 20 آذر 1391, 13:36 عصر
نمی دونم ربطش به پردازش تصویر و pattern matching چیه ؟ شما میخای یک تصویر را ناحیه بندی کنید همین ؟

jafari263
دوشنبه 20 آذر 1391, 20:39 عصر
در واقع عکس به یک grid picture تبدیل بشه به نحوی پیکس در آن grid form مثلا 2برابر یا 3برابر بشه.بنابراین سایز grid picture ساخته شده 2برابر یا 3 برایر عکسی که داشتم میشه.
کار من در واقع به 2 قسمت تقسیم می شه. در ابتدا من یک عکسی دارم:
1- ساختن همان عکس در قالب grid form -----> پیکسل را چند برابر بکند تا بهتر تشخیص داده شود
2- با استفاده از pattern matching رنگ و حاشیه عکس را تشخیص بده و در همان grid form نشان بده-----> پیکسل را چند برابر بکند تا بهتر تشخیص داده شود

مصطفی ساتکی
سه شنبه 21 آذر 1391, 14:02 عصر
این موردی که شما می فرماید میشه resize تصویر
و اگر هم میخای تصویر رو به یک grid تبدیل کنید به ستون و سطر دلخواه به صورت زیر عمل کنید.
BhRects bhGetRectParts(CvRect srcRect,int colCount,int rowCount)
{
int count = colCount * rowCount;
float colSize = srcRect.width / colCount;
float rowSize = srcRect.height / rowCount;


BhRects result(count);

float sumRow = 0;
for (int i=0 ; i < rowCount; i++)
{
float newSumRow = sumRow + rowSize;
int curRow = cvRound(newSumRow) - cvRound(sumRow);
int sumCol = 0;
for (int j=0; j < colCount;j++)
{
float newSumCol = sumCol + colSize;
int curCol = cvRound(newSumCol) - cvRound(sumCol);
int curCell = i * colCount + j;
result[curCell].rect = cvRect(sumCol + srcRect.x,sumRow + srcRect.y,curCol,curRow);
sumCol += colSize;
}
sumRow += rowSize;


}

return result;

}

jafari263
چهارشنبه 22 آذر 1391, 11:40 صبح
خیلی ممنونم از راهنماییتون.من میخوام با متلب کار کنم آیا میشه این کد رو به متلب تبدیل کنم؟

و یک سوال دیگه هم داشتم و اون اینه که من چطوری میتونم از pattern matching تو این پروژه استفاده کنم؟موضوع پروژه من اینه که از این روش استفاده کنم و من نمیدونم در کدوم قسمت یا مرحله کارم میتونم از این متود استفاده کنم؟

با تشکرفراوان