Skip to content

Commit

Permalink
html stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
jordanmbell committed Apr 9, 2021
1 parent 5138012 commit 67d2247
Showing 1 changed file with 69 additions and 11 deletions.
80 changes: 69 additions & 11 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -22,19 +22,77 @@

<body>

<h1 align="middle">CS 184: Final Project</h1>
<h1 align="middle">CS 184 Final Project: Variable lens raytracing and enhanced camera features</h1>
<br />
<h1>Members</h1>
<p>
Amy Doo, Jordan Bell, Katlyn Ho, Su Latt Phone
</p>
<h1>Summary</h1>

<p>
Our project idea is to add functionality to the ray tracing engine that will allow it to render images as if the camera lens was composed of physical lenses rather than an approximation of lenses, while also being able to have the set of lenses used be based on user input. Additionally, we plan to add additional features that a real camera has, such as auto and pre-defined focus, flash, and auto brightness.
</p>

<h1>
Problem Description
</h1>
<p>
In project 3, we modeled our camera as either having perfectly straight rays, or as having a single perfectly focused lens. In the real world, lenses are not so simple, and if we wanted to test what effect certain lens configurations could have on an image we would be unable to use the tool. By extending the raytracer to ray trace through physical lenses, we gain the ability to test lens effects before physically creating them, saving us from having to construct physical lenses or needing to work out complex math to determine the effect that it could have on the image. To extend this idea, we are implementing other characteristics of a camera to further help simulate physical cameras’ effects on images. These effects will be challenging as we will need to implement the various rules for light refracting through lenses, for every possible lens and for every set of lens configurations. We plan to implement these features by extending the project 3 raytracer. If we change how rays are generated before being sent through the raytracer, we can keep most of the features that we implemented before and prevent having to reimplement things. For changing focus, we can do some preprocessing on the image to determine possible pre-defined focus, and for autofocus we can create a heuristic to compare various values of focus to help decide on an optimal one. For flash and auto brightness we can either add an additional light element to the scene at the location of the camera, or do additional post processing on the image for auto brightness where we adjust every final pixel in the image.

<div align="middle">
<table style="width=100%">
<tr>
<td>
<!-- <img src="images/test4_interesting.png" align="middle" width="400px"/> -->
<figcaption align="middle">Resulting test4.svg with "interesting" jaggies.</figcaption>
</td>
</tr>
</table>
</div>
</p>

<h2 align="middle">Goals and Deliverables</h2>
<h3>Part 1: Baseline Plan</h3>
<p>
Our main goal with this project is to extend the raytracer we had previously implemented to include additional features, such as autofocus, manual focus, and flash that can simulate the capabilities of a physical camera. Some deliverables would include before and after images for flash and short videos demonstrating how autofocus and manual focus can be used and how they can change the image. Our baseline plan for these features would be having them all as command line arguments.
</p>
<p>
To measure the performance, we are going to do a comparison of different lens configurations and ensure that the runtime should be around the same for all of them. For the quality, we will be basing it off of similar tests in the spec since the work done in this past project is a baseline for what we plan to implement in our project.
</p>


<h3>Part 2: Inspirational Plan</h3>
<p>
As mentioned in our baseline plan, our main goal is to “extend the raytracer we had previously implemented to include additional features,
such as autofocus, manual focus, and flash that can simulate the capabilities of a physical camera.” On top of these, if things go well
and we have more time to further extend this project, for a new feature, we would like to try post-processing on the produced images for
automatic brightness. We will set a certain threshold to determine the middle ground for brightness to brighten an image if it’s too dark
or darken an image if it’s too bright.<br /> To improve our current baseline plan, we would aim to convert parameter-setting on the terminal command
line into an interactive part of the GUI in which the user can turn a dial or slider to change the focus or click a key or button to autofocus
or enable flash.

</p>

<h3>Schedule</h3>

<ul>
<li> Week 1: 4/5 - 4/10</li>
<li>Proposal due 4/9</li>
<ul>
<li>Jordan Bell: Title Summary, Problem Description, Goals and deliverables part 1</li>
<li>Katlyn Ho: Goals and deliverables part 1, Tasks</li>
<li>Su Latt: Goals and deliverables part 2</li>
<li>Amy Doo: Resources</li>
</ul>
<li>Week 2: 4/11 - 4/17</li>
<ul><li>Proposal revisions + outline code</li></ul>
<li>Week 3: 4/18 - 4/24</li>
<ul><li>Continue working on code + milestone</li></ul>
<li>Week 4: 4/25 - 5/1</li>
<ul><li>Milestone due 4/27 + continue working on code</li></ul>
<li>Week 5: 5/2 - 5/8</li>
<ul><li>Finalize code + final presentations 5/6</li></ul>
<li>Week 6: 5/9 - 5/11</li>
<ul><li>Final deliverables due 5/11</li></ul>
</ul>


<h2 align="middle">Resources</h2>
<p>
Our main reference will be an old <a href="https://cs184.eecs.berkeley.edu/sp16/article/19">spec</a> from a previous iteration of the class. We will be building off of someone’s ray tracer implementation from Project 3.
We will also use this <a href=https://www1.cs.columbia.edu/CAVE/publications/pdfs/Nayar_CVPR92.pdf>paper</a> to help make our autofocus algorithm efficient. We were also referencing this <a href=https://cs184.eecs.berkeley.edu/sp21/lecture/15/cameras-and-lenses>lecture</a> for our lens-ray interactions and auto focus methods.
</p>

</body>
</html>

0 comments on commit 67d2247

Please sign in to comment.