Skip to main content

ამაჩქარებელი სტრუქტურები

acceleration structures
სურათზე ნაჩვენებია სფეროს მეოთხედი ნაწილი რომელზეც აგებულია რვაობითი ხე(OcTree).
        გზების მიდევნების ამოცანის, ისევე როგორც სხივების მიდევნებაში ამოცანის ამოხსნის პროცესში მნიშვნელოვანი როლი უჭირავს სხივის გეომეტრიასთან თანაკვეთის ამოცანას, შესაბამისად მისი ოპტიმიზაცია მკვეთრად ამცირებს ამოცანის ამოხსნის საბოლოო დროს. სხივების ან სხივების პაკეტების მიდევნების პროცესში როგორც წესი სამკუთხედან თანაკვეთის ტესტების უმრავლესობა(80%-ზე მეტი) წარუმატებლად სრულდება. ასე რომ ჩვენი მიზანია დროულად დავადგინოთ ასეთი სხივები და დავაბრუნოთ უარყოფითი პასუხი. თუ სხივი/პაკეტი ყველა არსებულ ტესტს გაივლის მაშინ ხდება მისი შემოწმება მცირე რაოდენობის გეომეტრიულ პრიმიტივებთან. არსებული ამაჩქარებელი სტრუქტურები ახდენენ მოცემული გეომეტრიის საფუძველზე ხის აგებას, რომლის ფოთლებშიც ინახებიან გეომეტრიული პრიმიტივები. ხის აგების მეთოდებშიც გამოიყოფა 2 კატეგორია:
  1. სივრცის დანაწევრების მეთოდები - ახდენენ სივრცის დანაწევრებას და მათში არსებული გეომეტრიის ნაწილების ჩალაგებას ხის შვილობილ კვანძებში. მთავარი სისუსტეები ამ მეთოდის არის ის, რომ მაგალითად სივრცის თანაბარი დანაწევრება არ იწვევს გეომეტრიის(პრიმიტივების) თანაბარ დანაწილებას რაც გვაძლევს არაბალანსირებული ხეს(ocTree-ს შემთხვევა), ასევე გეომეტრიული პრიმიტივი შეიძლება ფარავდეს სივრცის სხვადასხვა ნაწილებს და შესაბამისად შეიძლება მოხვდეს ხის რამოდენიმე განშტოებაში ერთდროულად.
  2. გეომეტრიის დანაწევრება - ახდენენ გეომეტრიული პრიმიტივების დაყოფას და გადანაწილებას ხის შვილობილ კვანძებში. ასეთი ტიპის მეთოდებზე დაფუძნებული ამაჩქარებელი სტრუქტურები იღებენ უფრო ბალანსირებულ ხეს რაც საბოლოოდ გვაძლევს სტაბილურ წარმადობას. მთავარი სისუსტეები ასეთი მეთოდების არის ის, რომ ხის კვანძები რომლებიც წარმოადგენენ შემომსაზღვრელ ყუთებს(უმეტეს შემთხვევაში) ხშირად ფარავენ ერთმანეთს სივრცეში. ასეთი ამაჩქარებელი სტრუქტურების აგების დროს ერთ ერთი მთავარი მიზანი სწორედ ამ გადაფარვების მინიმიზაციაა.
        არსებული ამაჩქარებელი სტრუქტურებიდან გამოვყოთ ყველაზე გავრცელებული სტრუქტურები. ერთ-ერთი ყველაზე ძლიერი კანდიდატები არიან:

  1. k განზომილებიანი ხე (k-Tree) - ახდენს გეომეტრიის შემომსაზღვრელ ყუთში არსებული სივრცის დანაწევრებას რეკურსიულად და ალაგებს გეომეტრიას ხეში. ხის ყოველ სიმაღლეზე სივრცის დანაწევრება ხდება სხვადასხვა ღერძის მიმართ. 
  2. რვაობითი ხე (ocTree) - ახდენს გეომეტრიის შემომსაზღვრელ ყუთში არსებული სივრცის დანაწევრებას 8 თანაბარ ნაწილად შუაზე გაყოფის მეთოდით და ახდენს გეომეტრიის გადანაწილებას ხის შვილობის კვანძებში. შემდეგ ჩადის იმ შვილებში რომლებშიც მოხვდა გეომეტრია და იმეორებს პროცესს მანამ, სანამ ხის ფოთლებში არ დარჩება წინასწარ განსაზღვრული მცირე რაოდენობა პრიმიტივებისა, ან მივაღწევთ წინასწარ განსაზღვრულ მაქსიმალურ სიღრმეს.
  3. შემომსაზღვრელი ყუთების იერარქია (BVH) - მოყვანილი ორი ამაჩქარებელი სტრუქტურისგან განსხვავებით შემომსაზღვრელი ყუთების იერარქია განეკუთვნება გეომეტრიის დანაწევრების ჯგუქს. როგორც სახელწოდებიდან ჩანს ის არის შემომსაზღვრელი ყუთების იერარქია და რადგან მისი აგება ხდება გეომეტრიის დანაწევრებით ერთი კონკრეტული გეომეტრიული პრიმიტივი მხოლოდ ერთ ფოთოლში ხვდება. თუმცა მასაც, როგორც ყველა გეომეტრიის დანაწევრების მეთოდს აქვს ყუთების გადაფარვის პრობლემა. არსებობს როგორც ორობითი ასევე მრავლობითი შემომსაზღვრელი ყუთების იერარქიები(MBVH).
        

სურათზე ნაჩვენებია შემომსაზღვრელი ყუთების იერარქია(BVH) როგორც გეომეტრიული სახით ასევე ორობითი ხის სახით.


Comments

Popular posts from this blog

რუსული რულეტკის მეთოდი

Russian Roulette Technique რუსული რულეტკის მეთოდი არის ფართოდ გავრცელებული ტექნიკა მონტე-კარლოს ინტეგრირების პროცესის შესაწყვეტად(სახელწოდება მოდის ცნობილი რუსული თამაშიდან). იმის მაგივრად, რომ პროცესი შევწყვითოთ ხისტად, მაგალითად შერჩევების რაოდენობის რაიმე მაქსიმალურ რაოდენობაზე, რუსული რულექტკის მეთოდი გვეხმარება ინტეგრირების პროცესის მიუკერძოვებლად შეწყვეტაში. მთავარი იდეა რუსული რულეტკის მეთოდისა არის ის, რომ რუსული რულეტკა წყვეტს მონტე კარლოს მეთოდს რაიმე არანულოვანი p ალბათობით(ალბათობა შეიზლება შეირჩეს ერთხელ ან მონტე კარლოს მეთოდის ყოველ ბიჯზე სათითაოდ რაიმე მნიშვნელოვნობით) ან აგრძელებს მას და შემდგომი პროცესიდან მიღებულ შედეგს ამრავლებს 1/p - ზე. რადგან რუსული რულეტკის მეთოდი პროცესის შეწყვეტას ახდენს რაიმე არანულოვანი p ალბათობით ყოველთვის რჩება იმის შანსი, რომ პროცესი გაგრძელდეს რაც იმას ნიშნავს, რომ მონტე კარლოს ინტეგრირების პროცესისათვის ნებისმიერი სიღრმე მიღწევადი ხდება. სწორედ ამიტომ ხისტი შეზღუდვით მიღებული მიკერძოება( სისტემატიური შეცდომა ) ქრება რუსული რ...

ფერების RGB მოდელი

RGB Color Model         ფერების RGB მოდელი წარმოადგენს ისეთ მოდელს რომელშიც სამი ძრირითადი ფერის წითელი, მწვანე და ლურჯის საშუალებით მიიღება ფერების ფართო სპექტრი. მისი დასახელებაც მოდის სწორედ ძირითადი ფერების ინგლისური სახელწოდების ინიციალებიდან(Red, Green, Blue).         ფერთა სპექტრის ამდაგვარი წარმოდგენა დაკავშირებულია იმასთან, რომ გამოსახულების გამოტანის მოწყობილობებში რომელიც გააჩნიათ კომპიუტერებს, ტელევიზორებს ფერის მიღება ფიზიკურად ხდება სწორედ ამ სამი ძირითადი ფერის შეზავებით. დღესდღეობით ყველაზე გავრცელებული არის 24 ბიტიანი RGB მოდელი, სადაც თითოეულ კომპონენტს ეთმობა ერთი ბაიტი და შესაბამისად შეუძლია მიიღოს ნებისმიერი მნიშვნელობა [0, 255] დიაპაზონში, რაც საბოლოოდ გვაძლევს 16777216 განსხვავებულ ფერს.

სინათლის ხილული სპექტრი და სხივის თვისებები

Visible Spectrum სურათზე ნაჩვენებია პრიზმაში გამავალი თეთრი სხივის სპექტრულად გაშლის პროცესი.         სინათლე წარმოადგენს ელექტრომაგნიტურ ტალღას, რომელსაც როგორც ყველა ელექტრომაგნიტურ ტალღას გააჩნია რამოდენიმე მნიშვნელოვანი მახასიათებელი. ერთერთი მნიშვნელოვანი მახასიათებელი არის ტალღის სიგრძე, რომელიც განსაზღვრავს სხივის სპექტრულ ფერს. ელექტრომაგნიტური ტალღები ბუნებაში და თანამედროვე სამყაროში მრავლად გვხვდები. სხვადასხვა ტალთის სიგრძის(სიხშირის) ტალღებს იყენებენ როგორც საყოფაცხოვრებო(რადიო, მობილური ტელეფონი) დანიშნულების, ასევე სამედიცინო(რენდგენის სხივები) და სამხედრო(რადარები) მოწყობილობებში. ადამიანის თვალისთვის ხილული სინათლის ელექტრომაგნიტური ტალღების ტალღის სიგრძე იწყება დაახლოებით 400 ნანომეტრიდან და მთავრდება 700 ნანომეტრზე. ამ დიაპაზონს ქვემოთ ექცევა ულტრაიისფერი ტალღები და დიაპაზონს ზემოთ ექცევა ინფრაწითელი, რომელსაც ადამიანის თვალი ვერ აღიქვამს(იხილეთ ქვემოთ მოცემული სურათი). სინათლის თეთრი სხივი შედგება სხვადასხვა სიხშირის ტალღების ერ...