اطلاعیه

Collapse
No announcement yet.

فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

    برنامه به زبان verilog نوشته میشود
    این پروژه بر روی تراشه spartan-6 پیاده میشود.
    دوربین بدون fifo هست و پخش فیلم باید real time باشد.
    تصویر مورد نظر یک تصویر 640*480(اندازه vga که پیشفرض دوربین است)
    فیلم توسط کابل vga روی مانیتور نمایش داده میشود
    *
    *
    *
    *
    دوستانی که علاقه مند هستند میتوانند همراه شوند و از نظریات و دانستنیهایشان بهره مند شویم.
    سوال اول) از بین فرمتهای خروجی RGB565/555/444 , yuv/ycbcr 422 شما کدام مورد را برای خروجی دوربین بهتر میبینید.چرا؟
    و.......

    #2
    پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

    سلام. فکر کنم با توضیحاتی که دادی خودت واردتر از همه باشی :redface:
    در جهان هرگز مشو مدیون احساس کسی - تا نباشد رایگان مهرت گروگان کسی
    گوهر خود را نزن بر سنگ هر ناقابلی - صبر کن پیدا شود گوهر شناس قابلی

    دیدگاه


      #3
      پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

      سلام دوست عزیز
      ایشاالله تو کارت موفق باشی .
      منم کار با fpga رو تازه شروع کردم و همچین کاری میخام بکنم با اسپارتان 6 ، منتها با vhdl.
      منتظرم یکم راه بیفتم بعدش شروع کنم به این قسمت.
      در هر صورت ، الگوریتم کارمون یکیه ولی زبان فرق میکنه که زیاد مهم نیست.منم هنوز درگیر این قسمت ها نشده بودم و فلوچارتی واسه کار درست نکرده بودم.
      ظاهرا شما همچین کاری کردین و مراحل رو مشخص کردین ، اگه اینطوره بگین تا منم همراه بشم .
      اگه مایل بودی به این تاپیک هم یه سری بزن
      http://www.eca.ir/forum2/index.php?topic=116344.0

      دیدگاه


        #4
        پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

        نوشته اصلی توسط shayanmelody
        سلام دوست عزیز
        ایشاالله تو کارت موفق باشی .
        منم کار با fpga رو تازه شروع کردم و همچین کاری میخام بکنم با اسپارتان 6 ، منتها با vhdl.
        منتظرم یکم راه بیفتم بعدش شروع کنم به این قسمت.
        در هر صورت ، الگوریتم کارمون یکیه ولی زبان فرق میکنه که زیاد مهم نیست.منم هنوز درگیر این قسمت ها نشده بودم و فلوچارتی واسه کار درست نکرده بودم.
        ظاهرا شما همچین کاری کردین و مراحل رو مشخص کردین ، اگه اینطوره بگین تا منم همراه بشم .
        اگه مایل بودی به این تاپیک هم یه سری بزن
        http://www.eca.ir/forum2/index.php?topic=116344.0
        اگر همراه بشید خوشحال میشم

        دیدگاه


          #5
          پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

          اگر بخواهیم از فرمت پیش فرض دوربین استفاده کنیم درگیر تبدیل دیتای دوربین به rgb میشویم و اگر بخواهیم ریجیستر های دوربین را عوض کنیم درگیر پروتکل SCCB دوربین میشویم (البته پیاده سازیش کار سختی نیست)
          دوستانی که کار کردن اگه راهنمایی بکنن ممنون میشم.

          دیدگاه


            #6
            پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

            من فعلا نمیخاستم درگیر این قسمت ها بشم ، اما تاپیک شما باعث شدش دیروز که وقتم آزاد بود برم سراغ vga
            تونستم یه جواب اولیه ازش بگیرم
            جواب اولیه شامل نشون دادن رنگ های دلخواه با فرمت 565 در یک فریم ثابت بود که به راحتی روی مانیتور نمایش داده شد.
            دوربینی که من در حال حاضر موجود دارم به همراه بافر هستش ، برای تست اولیه ایشالله تو تعطیلات آخر هفته سعی میکنمبرم سراغ sccb ببینم چیکارش میتونم بکنم
            البته تو بیشتر پروژه هایی که من دیدم از ov9650 استفاده کردن ، فرق این 2 دوربین میدونین در چیه ؟

            دیدگاه


              #7
              پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

              نوشته اصلی توسط shayanmelody
              من فعلا نمیخاستم درگیر این قسمت ها بشم ، اما تاپیک شما باعث شدش دیروز که وقتم آزاد بود برم سراغ vga
              تونستم یه جواب اولیه ازش بگیرم
              جواب اولیه شامل نشون دادن رنگ های دلخواه با فرمت 565 در یک فریم ثابت بود که به راحتی روی مانیتور نمایش داده شد.
              دوربینی که من در حال حاضر موجود دارم به همراه بافر هستش ، برای تست اولیه ایشالله تو تعطیلات آخر هفته سعی میکنمبرم سراغ sccb ببینم چیکارش میتونم بکنم
              البته تو بیشتر پروژه هایی که من دیدم از ov9650 استفاده کردن ، فرق این 2 دوربین میدونین در چیه ؟
              دوربین ov7670 پیشرفض دادن تصاویرش YUV هست و برای تبدیل به RGB باید ریجیسترش را عوض کنم یا با کد نویسی تبدیل کنم
              فقط ی سوال شما سیگنال های Horizonal sync & Vertical sync را از دوربین گرفتید (HREF & HSYNC دوربینا میگم) یا خودتون ساختید؟
              اگه در مورد زمان بندیتون توضیح بدید و کد قرار بدید ممنون میشم

              دیدگاه


                #8
                پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

                نوشته اصلی توسط shayanmelody
                من فعلا نمیخاستم درگیر این قسمت ها بشم ، اما تاپیک شما باعث شدش دیروز که وقتم آزاد بود برم سراغ vga
                تونستم یه جواب اولیه ازش بگیرم
                جواب اولیه شامل نشون دادن رنگ های دلخواه با فرمت 565 در یک فریم ثابت بود که به راحتی روی مانیتور نمایش داده شد.
                دوربینی که من در حال حاضر موجود دارم به همراه بافر هستش ، برای تست اولیه ایشالله تو تعطیلات آخر هفته سعی میکنمبرم سراغ sccb ببینم چیکارش میتونم بکنم
                البته تو بیشتر پروژه هایی که من دیدم از ov9650 استفاده کردن ، فرق این 2 دوربین میدونین در چیه ؟
                دوربین ov9650 دقیق تر هست مثلا برای فرمت QVGA میتونه 60 فرم بر ثانیه بده درحالی ک ov7670 برای همه فرمت ها 30فرم میده و یک سری تفاوتای دیگه...

                دیدگاه


                  #9
                  پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

                  فعلا هنوز سراغ دوربین نرفتم ، کار با دوربین و برای شروع فقط قسمت SCCB رو میخام بزارم برای آخر این هفته که وقت آزاد داشته باشم .
                  سیگنال های کنترلی vsync و hsync توسط خود پردازنده تولید میشد.
                  برای داشتن رزولیشن 480*640 طبق آموزش های pdf یه بنده خدا(رفرنس آموزش vhdl و اسپارتان 3 که از همین سایت دانلودش کردم و اسم نویسندش pong p. cho تو نت سرچ بزنین میتونین دانلودش کنین.فصل 12 و 13 در مورد vga توضیح داده ) باید برای رزولیشن 525*800 (دقیقا خاطرم نیست) سیگنال های کنترلی رو درست کنین و وقتی که شمارنده های سیگنال های مذکور در بازه نمایشی قرار گرفت ، سیگنال های تصویر رو رفرش کنین.
                  برای اینکه تصویر روی صفحه مانیتور بدون لرزش باشه فرکانس رفرش تصویر باید 60 هرتز باشه .در نتیجه کلاک لازم اینطوری حساب میشه : 800*525*60 که تقریبا برابر 25 مگاهرتز میشه.
                  خودم چون تازه شروع به کار کردم و هنوز کاملا به vhdl وارد نیستم اول از همه اومدم فرکانس اوسیلاتور بوردم رو که برابر 48 مگ بود تبدیلش کردم فرکانس های دلخواه ساختم. بعد که از این قسمت جواب گرفتم بقیه کار رو انجام دادم.
                  بقیه کار هم خیلی سادست ، با چند تا شرط ساده میتونین سیگنال های کنترلی رو تولید کنین و در نهایت سیگنال تصویر رو برای پیکسل های دلخواه رفرش کنید.
                  فعلا به کد دسترسی ندارم تا غروب که برم خونه و کد و یه عکس از نمایش یه فریم رنگ های دلخواه واستون بزارم.
                  تا اون موقع اگه میتونین کلاک تقریبی 25 مگ رو درست کنین به راحتی با توضیحات بالا میشه vga رو درایو کرد.
                  اگه نه پیشنهادم اینه که برای دستگرمی یه فرکانس 1 هرتز درست کنین و صحت عملکردشو رو بردتون تست بگیرین .
                  =========
                  و برای دوربین
                  به نظرم باید بتونیم SCCB رو درایو کنیم.چون بعضی جاها تصویر رنگی میخایم و بعضی جاها تصویر خاکستری یا سری گزینه های دیگه.
                  نتیجه اینکه درایو کردن SCCB اجتناب ناپذیره و عملا مهم ترین بخش این پروژه همین قسمته.وگرنه خوندن 8 بیت دیتا با یه سری سیگنال کنترلی که کار سختی نیست .

                  دیدگاه


                    #10
                    پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

                    سلام

                    من با این دوربین کار کردم (مدل بدون بافر) برای اون از کد های سایت زیر استفاده کردم:
                    http://hamsterworks.co.nz/mediawiki/index.php/OV7670_camera

                    اولین چیزی که مجبور شدم به پروژه اضافه کنم, یک Dual Port BRAM بود. که یک پورت به دوربین وصل بود و یک پورت هم به VGA. درایور VGA هم که ساده هست. کد رو ببین و برای خودت customize کن!

                    دیدگاه


                      #11
                      پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

                      نوشته اصلی توسط mohammadh1387
                      سلام

                      من با این دوربین کار کردم (مدل بدون بافر) برای اون از کد های سایت زیر استفاده کردم:
                      http://hamsterworks.co.nz/mediawiki/index.php/OV7670_camera

                      اولین چیزی که مجبور شدم به پروژه اضافه کنم, یک Dual Port BRAM بود. که یک پورت به دوربین وصل بود و یک پورت هم به VGA. درایور VGA هم که ساده هست. کد رو ببین و برای خودت customize کن!
                      سلام
                      تشکر بابت لینک مفیدی که قرار دادین.
                      یکی دوتا سوال دارم ، میدونم برای شما پیش پا افتادست ، اما چون تازه کارم دیگه ببخشید.
                      چرا از bram استفاده کردین ؟
                      ممنون
                      ========
                      پدیت :
                      من vhdl رو تازه شروع کردم و فعلا تو قسمت های ابتدایی هستم
                      از لابلای کدهایی که تو لینکی که شیر کردین چند مورد جدید یاد گرفتم
                      بسیار ممنونم

                      دیدگاه


                        #12
                        پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

                        نوشته اصلی توسط mohammadh1387
                        سلام

                        من با این دوربین کار کردم (مدل بدون بافر) برای اون از کد های سایت زیر استفاده کردم:
                        http://hamsterworks.co.nz/mediawiki/index.php/OV7670_camera

                        اولین چیزی که مجبور شدم به پروژه اضافه کنم, یک Dual Port BRAM بود. که یک پورت به دوربین وصل بود و یک پورت هم به VGA. درایور VGA هم که ساده هست. کد رو ببین و برای خودت customize کن!
                        لینک مفیدی بود

                        دیدگاه


                          #13
                          پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

                          نوشته اصلی توسط shayanmelody
                          سلام
                          تشکر بابت لینک مفیدی که قرار دادین.
                          یکی دوتا سوال دارم ، میدونم برای شما پیش پا افتادست ، اما چون تازه کارم دیگه ببخشید.
                          چرا از bram استفاده کردین ؟
                          ممنون
                          ========
                          پدیت :
                          من vhdl رو تازه شروع کردم و فعلا تو قسمت های ابتدایی هستم
                          از لابلای کدهایی که تو لینکی که شیر کردین چند مورد جدید یاد گرفتم
                          بسیار ممنونم

                          منتظر جواب
                          چرا تو این پروژه مجبور به استفاده از bram شدین ؟
                          به خاطر اینکه کلاک دوربین و مانیتور یکی نیستن ؟

                          دیدگاه


                            #14
                            پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

                            پروژه تغریبا تمام شده و من خودم کم کم توضیحاتی در مورد پروژه میدم , امید وارم مفید باشه

                            دیدگاه


                              #15
                              پاسخ : فیلم برداری توسط دوربین ov7670 و پخش روی مانیتور توسط کابل vga به صورت real time

                              اول اینکه ما از حالت پیش فرض دوربین استفاده میکنیم
                              به دو دلیل
                              1 درگیر پروتکل SCCB نشوم
                              2 فرمت YCbCr در صورتی که بخواهیم پردازش تصویر انجام دهیم بیشتر به درد ما میخورد
                              با استفاده از ضرایب زیر RGB را میسازیم

                              دیدگاه

                              لطفا صبر کنید...
                              X