PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : براي پردازش تصوير Avr خوبه يا Arm ؟



mohammadr1371
11-12-2009, 01:06
دوستان يه سوال داشتم براي پردازش تصوير Avr خوبه يا Arm ؟

sam7
11-12-2009, 10:41
دوست خوبم به نظر من ARM خیلی بهتره.

چونکه یه مؤلفه خیلی مهم تو پردازش تصویر فرکانس نمونه برداریه که اونم شدیداً به فرکانس کار میکروی مورد استفاده داره. یه AT91SAM7x256 که ارزونترین ARM تو بازاره به راحتی تا 384KHz میتونه نمونه برداری کنه ولی AVR هرچند به اسم تا 1MHZ هم نمونه میگیره ولی در عمل از 125KHz به بالا داغون میشه. تازه... اگه بخوای از 10 بیت استفاده کنی از 200 کیلو بالاتر نمیره. در ضمن نویز هم شدیداً رو نتیجه کار تاثیر داره که از نظر نویز AVR وضعش خیلی بده.

یه جیز دیگه: باید بین دوتا نمومه که میگیری فرصت کافی برای پردازش ماتریسهای ساخته شده از دیتای بدست اومده داشته باشی. این یعنی اینکه باید فرکانس کاری CPU میکرو تا جای ممکن بالا باشه. AVR حداکثر تا 20 مگ میره ولی همون ARM7TDMI معمولی تا 200مگ هم براحتی میره(البته با PLL).

البته بهترین راه برای اینکار اینه که بیرون از میکرو با یه چیپ ADC سیگنال آنالوگ رو تبدیل به دیجیتال کنی، بعد اون بیتهای بدست اومده رو به میکرو انتقال بدی و پردازش رو روی اونا انجام بدی.

farzadsw
11-12-2009, 14:41
برای پردازش تصویر باید یه ماژول دوربین داشته باشی که فرض میکنیم داری.

چون خروجی ماژول ها دیجیتال هست(یه چیزی شبیه I2C ) اون مباحث ADC و فرکانس نمونه برداری اینجا مطرح نیست (احتمالا منظور دوستمون پردازش صدا بوده)

از اینجا به بعد مهمترین مسائل میزان رم ، دستور العملهای پروسسور (INSTRUCTION SET) و بالاخره فرکانس کاری پروسسور (میکرو) هست.
حالا مقایسه :
1. رم : AVR (مثلا مگا 32 ) 2 کیلوبایت رم داره ، 7X256 دارای 64 کیلوبایت رم هست. پس نیاز به توضیح بیشتری نیست
2. دستورالعمل ها : AVR یه میکروی 8 بیتی هست ، و آرم یه میکروی 32 بیتی . این یعنی اینکه محاسباتی که آرم روی اعداد بزرگ انجام میده اگه 1 سیکل طول بکشه (به طور کلی ) برای AVR (اگه فرض کنیم فرکانسشون برابره) 4 سیکل طول میکشه . اما از اون مهمتر آرم یکسری دستور العمل داره که اصلا تو AVR موجود نیست ، مثل ضرب 2تا عدد 32 بیتی . توی پردازش تصویر (یا پردازش صدا یا هر چیز دیگه ای) کاری که انجام میشه اینه که تعداد خیلی زیادی ضرب و جمع باید پشت سر هم انجام بشه . و چون AVR دستور اعمل ضرب رو داخلش نداره باید با انجام چندیدن مرحله جمع این کار رو انجام بده . نتیجه گیری اگه فرکانس AVR و ARM7 برابر باشه ، آرم حداقل 40برابر از AVR سریعتره .
3. فرکانس :فرکانس کاری AVR حداکثر 20 مگ و ARM7 حداکثر 75 مگ میتونه باشه (200 مگ رو از کجا دیدید؟!) .

نتیجه گیری : AVR رو تو زمینه پردازش سیگنال (چه تصویر چه صدا و یا هرچیز دیگه ای) اصلا نمیشه مقایسه کرد. تنها پردازش سیگنالی که با AVR میشه انجام داد ، پردازش صدا اونم به صورت ساده نه انجام عملیات مختلف روی سیگنال .
البته ARM7 هم با اینکه خیلی از AVR سریعتره ولی باز هم برای پردازش تصویر با رزولیشن بالا و به صورت بلادرنگ خیلی مناسب نیست . اما میتونه رزولیشن ها کوچیکتر و فریم ریت های کمتر رو پردازش کنه (مثلا 12 فریم یا 8 فریم)

mohammadr1371
11-12-2009, 16:13
از توضيحات كاملتون ممنون
خيلي كمك كرد :lol: :wink:

sam7
11-12-2009, 21:15
سلام دوست خوب، آقای farzadsw:

توضیحاتتون خیلی کامل بود. از این بابت خیلی ممنون. ولی لازم میدونم چند تا نکته رو توضیح بدم.

اول در رابطه با دوربین: دوربین های آنالوگ با قیمت مناسب همه جا هستن که یکی از دوستانم برای پروژه کارشناسیش از اونا (با یه مگا 128) برای پردازش تصویر استفاده کرد. من موقعی که پاسخ تاپیک رو مینوشتم با فرض استفاده از این مدل دوربینها داشتم توضیح میدادم. آخه اینجا تو ارومیه همه چیز پیدا نمیشه (من خودم 2 هفته پیش یه Sam7x256 لازم داشتم، تو ارومیه که پیدا نکردم هیچی تو تبریز هم 40% قیمتش بالاتر از معمول بود برای همین به کویرالکترونیک سفارش دادم). البته درسته که اجباراً کیفیت کار خیلی پایین میاد ولی به هر حال عملی هست. کاری که اون کرده بود در هر مرحله حدود یک ثانیه وقت میگذاشت و یه عکس QCIF رو پردازش میکرد. محیطی که براش تعریف شده بود فقط شامل سیاه و سفید و 3 درجه خاکستری بود. باید توی این محیط با استفاده از یک سری علائم راهش رو پیدا میکرد. در واقع یه قسمت از کار تعیف شده در پروپوزال پروژه همین استفاده از دوربین آنالوگ بود.

دوم در رابطه با فرکانس ARM: اگه دیتاشیت مدل AT91SAM7x256 رو مطالع کرده باشید(AT91SAM7X Series Preliminary; Revision H; # of Pages: 687) در صفحه 27 فرکانس خروجی PLL رو نوشته 200 مگ. من هم منظورم فرکانس ورودی cpu بود نه چیز دیگه ای. اگه دقت کرده باشی نوشتم:



باید بین دوتا نمومه که میگیری فرصت کافی برای پردازش ماتریسهای ساخته شده از دیتای بدست اومده داشته باشی. این یعنی اینکه باید فرکانس کاری CPU میکرو تا جای ممکن بالا باشه. AVR حداکثر تا 20 مگ میره ولی همون ARM7TDMI معمولی تا 200مگ هم براحتی میره(البته با PLL).

درباره Instuction Set درسته. من به این توجه نکرده بودم. خیلی ممنون که یادآوری کردید.

اما در ضمینه حافظه همون 4کیلو برای پروژه ای مثل اونی که دوست من کار کرده بود کافیه. البته حق کاملاً با شماست. برای اینکه کافی باشه باید راهکارهای ماتریسی استفاده کرد که البته به دلیل زمان بر بودن بازده رو خیلی میارن پایین.

باز هم از توجه شما خیلی ممنون :wink:

farzadsw
12-12-2009, 04:06
با تشکر از تو ضیحات شما ،
جالبه ، من برعکس شما دوربین با خروجی آنالوگ تو بازار ندیده بودم و فقط اینایی که خروجی دیجیتال دارن رو دیدم !

اون خروجی pll رو مستقیم به cpu نمیدن ( نباید داد) و حتما باید با تقسیم به کمتر از 75 مگ رسوند. توی دیتاشیت حداکثر فرکانس کاری رو نوشته ، که اگه اشتباه نکنم حدود 60 مگه و 75 مگ هم مربوط به lpc ها هست .
سرعت و حافظه مورد نیاز بستگی به این داره که جه رزولیشن و چه میزان رنگ و چه فریم ریتی دارید. با توجه به رزولیشن qcif و رنگ 2بیتی و فریم ریت 1 ،avr تونسته کار رو انجام بده ولی اگه مثلا رزولیشن qvga و 16 بیت رنگ و فریم ریت 24 نیاز باشه ، arm7 هم جواب نمیده . البته اینا بستگی به این داره که هدف از پردازش تصویر چیه.

Pioneer
20-04-2010, 16:51
میشه یکی یه توضیح در مورد خروجی دوربین ها بده؟!!! هم آنالوگ هم دیجیتال!! و اینکه خروجی وبکم usbچیه؟ و اطلاعاتی که از کابل خروجی دوربینها(فیش زرد) میاد چه پروتکلی داره؟ و DVIیا RGB چیه و چه فرقی دارن؟!! ممنون، خیلی!!!

Division
21-04-2010, 02:15
دوم در رابطه با فرکانس ARM: اگه دیتاشیت مدل AT91SAM7x256 رو مطالع کرده باشید(AT91SAM7X Series Preliminary; Revision H; # of Pages: 687) در صفحه 27 فرکانس خروجی PLL رو نوشته 200 مگ. من هم منظورم فرکانس ورودی cpu بود نه چیز دیگه ای

فركانس ورودي cpu پارامتري نيست كه اهميتي توي طراحي ها داشته باشه اولا اين فركانسي كه شما عنوان مي كنين تحت هيچ شرايطي وارد cpu نميشه اين فركانس با عبور از يك واحد تقسيم كننده، فركانسش كم ميشه بعدا جهت پالس كلاك cpu به كار برده ميشه .
يكي از اهداف اين عمل يه نوع فيلتر براي پالس كلاك هستش .
حداكثر فركانس cpu به اندازه 55مگاهرتز و حداكثر فركانس دسترسي به پايه ها (با تعريف يه سري اصول) 30 مگاهرتز است .


اون خروجی pll رو مستقیم به cpu نمیدن ( نباید داد) و حتما باید با تقسیم به کمتر از 75 مگ رسوند. توی دیتاشیت حداکثر فرکانس کاری رو نوشته ، که اگه اشتباه نکنم حدود 60 مگه و 75 مگ هم مربوط به lpc ها هست .

منم باتون موافقم و لازم ميدونم اشاره كنم كه تو lpc2300 ها (سريarm7tdmi ) نهايت كلاك cpu به ميزان 72 مگاهرتز ميرسه .


ولی همون ARM7TDMI معمولی تا 200مگ هم براحتی میره(البته با PLL).

اگر منظورتون فركانس خروجي pll باشه تو سري lpc با همين هسته arm7tdmi فركانس خروجي تا 550 مگاهرتز هم ميتونه افزايش پيدا كنه، البته در ادامه توسط واحد هاي تقسيم كننده پالس كلاك براي ادوات پريفرال بهينه ميشه (هيچيك از قسمت هاي پريفرال ميكرو با اين فركانس نمي تونن كار كنن)


دوربین های آنالوگ با قیمت مناسب همه جا هستن که یکی از دوستانم برای پروژه کارشناسیش از اونا (با یه مگا 128) برای پردازش تصویر استفاده کرد

استفاده از دوربين آنالوگ مستلزمه دو تا كار اساسيه : 1- تبديل سيگنال آنالوگ به ديجيتال 2- عمليات پردازش تصوير
با توجه به فركانس كاري ميكروهاي سري مگا كه حداكثر 16 مگاهرتزه تنها تصوري رو كه ميشه تو خروجي ازش انتظار داشت (با اين حجم عمليات سنگين) رزولیشن qcif و رنگ 2بیتی و (با فریم ریت 1 ) هستش كه يه درجه از راه اندازي lcdهاي گرافيكي سياه سفيد معمولي بالاتره و با اين اوصاف پردازش تصوير در سطح خيلي پاييني محسوب ميشه .

gilas
17-05-2010, 12:37
البته سرعت سری ATXMEGA AVR به 200MHz هم می تونه برسه یک نگاهی به صفحه 95 دیتا شیت XMEGA A
MANUAL در سایت اتمل بندازید و ADC 12 bit داره

Pardazesh-Gar
17-05-2010, 19:49
با avr هم میشه پردازش تصویر انجام داد. حجم پردازش مهمه. قراره چه الگوریتم هایی پیاده بشه؟!!

omidbarezgar
17-08-2011, 15:03
سلام من یک پروژه دارم که باید auto focus دوربین رو با avr پیاده سازی کنم میخاستم ببینم در این رابطه میتونید کمکم کنید با تشکر

obap
17-08-2011, 15:45
سلام
من میخاستم الگوریتم auto focus رو پیاده سازی کنم کسی میتونه کمکم کنه
البته یک الگوریتم ساده مثل میانگیری از عکس
آیا میتونم با avr این کار رو انجام بدم یا نه

alireza9900
17-08-2011, 19:23
فک نکم avr گزینه مناسبی باشه.
avr شاید بشه با avr مثلا یه تصویر رو از دوربین روی lcd به صورت بلادرنگ نشون داد و حالا فوقش سیاه سفیدش کرد ولی برای این کار بهتره از آرم یا fpga استفاده کنید که بهترین نتیجه رو بگیرید.