Line 1: |
Line 1: |
− | | + | a |
| == '''About Me''' == | | == '''About Me''' == |
| | | |
Line 37: |
Line 37: |
| of his interviews that students in colleges should contribute to open source as | | of his interviews that students in colleges should contribute to open source as |
| their college projects instead of making new projects from scratch, I think | | their college projects instead of making new projects from scratch, I think |
− | open source projects gives us a vantage point to real and professional | + | open source projects give us a vantage point to real and professional |
| programming. This summer I would like to contribute to Sugar Labs for the port | | programming. This summer I would like to contribute to Sugar Labs for the port |
| of ImageViewer activity in JavaScript. | | of ImageViewer activity in JavaScript. |
Line 48: |
Line 48: |
| | | |
| '''Describe your project in 10-20 sentences. What are you making? Who are you making it for, and why do they need it? What technologies (programming languages, etc.) will you be using?''' | | '''Describe your project in 10-20 sentences. What are you making? Who are you making it for, and why do they need it? What technologies (programming languages, etc.) will you be using?''' |
| + | |
| + | I will make an Image viewer in JavaScript( a web application) which will be similar to existing python Image Viewer in Sugar and will have additional features. The application will be made for students. It will induce creativity and learning through its playful user interface and fun tutorials attached with it. The detailed structure of the application is explained further. |
| | | |
| === '''APPLICATION FEATURES''' === | | === '''APPLICATION FEATURES''' === |
| * The application will be able to view images from local disk or web | | * The application will be able to view images from local disk or web |
− | * It will be able to view and edit the images, rotate, scale them. | + | * It will be able to edit images, rotate, scale them. |
| * It will have advanced image processing features such as | | * It will have advanced image processing features such as |
| 1) Crop, resize | | 1) Crop, resize |
Line 59: |
Line 61: |
| 3) Apply effects like sepia ,grayscale ,vintage, lomo etc. | | 3) Apply effects like sepia ,grayscale ,vintage, lomo etc. |
| | | |
− | 4) Control of RGB colours to induce learning and creativity. Three sliders for R, G, B, with which children can increase or decrease respective values of the pixels of the image. if they increase all of them by same quantity brightness will increase so they can understand how brightness changes! | + | 4) RGB controllers. Three sliders for R, G, B, with which students can increase or decrease respective values of the pixels of the image. |
| | | |
| 5) For convolution filters, we can have an input matrix(3*3) in which weights can be adjusted by the students. | | 5) For convolution filters, we can have an input matrix(3*3) in which weights can be adjusted by the students. |
Line 70: |
Line 72: |
| * It will have touch interface for the devices supporting touch technology. | | * It will have touch interface for the devices supporting touch technology. |
| * The application will have a Plugin mechanism for adding further effects and features. | | * The application will have a Plugin mechanism for adding further effects and features. |
− | * The application will have a “'''fun facts”''' or “ '''tutorial'''” section. In this section children will be introduced to the world of pixels. How pixels make an image and how they can be manipulated using the application. Each filter will be explained through description/ images/ animations. This will encourage them to think out of the box and if they think their effects created through RGB data manipulation, are good enough they can create their plugin.Reference links for further study will be given. | + | * The application will have a “'''fun facts”''' or “ '''tutorial'''” section. In this section children will be introduced to the world of pixels. How pixels make an image and how they can be manipulated using the ImageViewer application. Each filter will be explained through description/ images/ animations. This will encourage them to think out of the box and if their effects created through RGB data manipulation are good enough they can create their own plugin! The RGB controllers can explain how pixels values can be changed in an image. Incresing all RGB values with the same amount increases the brightness, taking average of RGB values can give grayscale effect, for advance filters like blur,sharpness, edge detection which use convolution filters, an input matrix (3*3) will be made so that students can enter different weights and see the consequent result. All these will be accompanied by live examples explained thoroughly in the tutorial section. Reference links for further advance study will also be given. ( A demo of this can be seen in the prototype mentioned below) |
| * Documentation | | * Documentation |
| | | |