כותב |
|
רן אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 28 May 2010 בשעה 22:55 | | IP רשוּם
|
|
|
|
אני מנסה לחפש דרך יעילה לחפש במערך פיקסלים פיקסל שדומה
לפיקסל אחר. דמיון פיקסלים - סכום ההפרשים בערכי ה R, G, B
שלהם בערך מוחלט.
יש למישהו רעיון איך אפשר לבצע משהו כזה שיהיה יעיל יותר מ
O(n) (חיפוש על כל המערך)?
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 29 May 2010 בשעה 12:05 | | IP רשוּם
|
|
|
|
מכיוון שאין שום חוקיות בפסיקסלים שאתה מתאר, אי אפשר לנצל אחת כזאת כדי למצוא דרך יעילה יותר...
תקן אותי אם אני טועה.
אם אתה מחפש מהירות אולי כדאי להעביר את העיבוד הזה לכרטיס המסך (pixelshader) או להשתמש בספריית עיבוד תמונה שונה שטוענת/עוברת על הפיקסלים יותר מהר - או שטוענת לקריאה בלבד - בהתאם לשימוש שלך
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
רן אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 29 May 2010 בשעה 20:41 | | IP רשוּם
|
|
|
|
shoshan כתב:
מכיוון שאין שום חוקיות בפסיקסלים שאתה
מתאר, אי אפשר לנצל אחת כזאת כדי למצוא דרך יעילה יותר...תקן
אותי אם אני טועה.אם אתה מחפש מהירות אולי כדאי להעביר את
העיבוד הזה לכרטיס המסך (pixelshader)או להשתמש בספריית עיבוד
תמונה שונה שטוענת/עוברת על הפיקסלים יותר מהר - או שטוענת
לקריאה בלבד - בהתאם לשימוש שלך
|
|
|
מדובר על מערך של צבעים, שימוש בכרטיס מסך או ספריית עיבוד לא
רלוונטי פה. תוכל גם להסתכל על זה כמערך קואורדינטות אם תרצה.
ואני מקווה שאולי תהיה דרך למיין את המערך צורה כזו שחיפוש
יהיה מאוד מהיר. פשוט אני לא מצליח לחשוב על דרך למיין את
המערך כך.
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 30 May 2010 בשעה 18:38 | | IP רשוּם
|
|
|
|
שאלה - האם התמונה תמיד אותה תמונה ורק הפיקסלים שמחפשים שונים ?
ובנוגע לעיבוד בכרטיס מסך - אין מה לעשות הוא מאוד מהיר - הוא לא בא ליעל אלא לזרז - אבל אם זה לא הכיוון הרצוי אז לא נלך בו :)
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
רן אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 30 May 2010 בשעה 19:53 | | IP רשוּם
|
|
|
|
shoshan כתב:
שאלה - האם התמונה תמיד אותה תמונה ורק
הפיקסלים שמחפשים שונים ?ובנוגע לעיבוד בכרטיס מסך - אין מה
לעשות הוא מאוד מהיר - הוא לא בא ליעל אלא לזרז - אבל אם זה
לא הכיוון הרצוי אז לא נלך בו
|
|
|
אני חושש שישנה אי הבנה - אני לא מחפש בתמונה אלא במערך של
פיקסלים. אין קשר לתמונות. לכן קשה לי להאמין שעיבוד בכרטיס
מסך יעזור - קשה לי להאמין שהוא יהיה מהיר יותר מהמעבד.
וברור לי שאין כרגע חוקיות - השאלה היא אם אפשר לארגן את
המערך בצורה כזו שיהיה ניתן לגשת אליו בצורה יעילה.
|
חזרה לתחילת העמוד |
|
|
11010010110 פורומיסט על
הצטרף / הצטרפה: 23 April 2006
משתמש: מנותק/ת הודעות: 2621
|
נשלח בתאריך: 30 May 2010 בשעה 22:10 | | IP רשוּם
|
|
|
|
כרטיס מסך יכול מאוד לעזור - הוא מעבד לכל דבר. יכול להיות כדאי להוסיף
למערך פיקסלים הקיים ראש של תמונת bmp ולתת את זה לכרטיס מסך בתור
תמונה
אם לא אכפת לך דיוק מקסימלי 'הוגן' בזיהוי (כלומר זה בסדר אם במקום
אחד הוא יחליט ש 10 זה מספיק קרוב ובמקום אחר 8 זה לא) אתה יכול
למיין לקבוצות של +- כמה ערכים ב 'מדרגות' כאלה ולא מיון אמיתי לפי
ערכים
קיימת תוכנת צייר בקוד פתוח בשם kolorpaint אם פיצ'ר של זיהוי צבעים
דומים בדיוק מה שאתה מחפש (לא בטוח שהוא בנוי יעיל במיוחד מבחינת זמן)
http://kde.org/applications/graphics/kolourpaint
אתה יכול לבדוק בקוד מקור איך הם עשו את זה
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 31 May 2010 בשעה 00:17 | | IP רשוּם
|
|
|
|
אם תסדר הפיקסלים (קואורדינטה פלוס כחול פלוס ירוק) במערך שממויין לפי ערך האדום שלהם (256 מערכים שהאינדקס זה הערך של האדום)
לדוגמא
זה יחלק את מספר ההשוואות שצריך לבצע בלא מעט...
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
רן אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 31 May 2010 בשעה 18:26 | | IP רשוּם
|
|
|
|
אני חושש לא הבנתי - אתה יכול לפרט יותר?
|
חזרה לתחילת העמוד |
|
|