|
| 1 | +# 👨🔬🧑🔬👩🔬 Scientific Website Template |
| 2 | + |
| 3 | +Welcome to the repository of my website. The idea is to provide a quick and easy to use solution that requires little html or css skills by providing a usefull template that only needs to be filled with content. It follows the style currently popular for project pages in computer vision. It is based on the [minimal mistakes](https://github.com/mmistakes/minimal-mistakes) theme for [jeykll](https://jekyllrb.com) and extends it to a template for scientific project pages and an overview of publications. |
| 4 | + |
| 5 | +## 📇 Using the template |
| 6 | + |
| 7 | +If you want to use and modify the template, you are more than welcome to do so. The following tries to guide you through the process of setting up your own webpage with this template using `github.io`. This process is far from perfect and reflects my very limited understanding of this process. I am happy for any suggestions for improvement. It also acts as an overview of the different parts of this repository. |
| 8 | + |
| 9 | +### 💾 Copying the repository |
| 10 | + |
| 11 | +You can either clone or fork this repository from the github webpage. The repository should already include all the content and style files you need or install them if necessary. |
| 12 | + |
| 13 | +### 🏃♂️ Running it locally |
| 14 | + |
| 15 | +As this template uses [jeykll](https://jekyllrb.com) it is easy to deploy locally and test the website, before pushing any changes. To setup jekyll locally, follow the [instructions](https://jekyllrb.com/docs/installation/) for your operating system. If you have setup **ruby** and **jekyll**, you can navigate to this directory and run `jekyll serve`. You can work on this repository in the meantime. Refreshing the website will update the content. |
| 16 | + |
| 17 | +### 📡 On github |
| 18 | + |
| 19 | +If you have cloned the repository instead of forking it, you need to change the location to the remote repository on your github profile. After setting up the remote repository, you have to create a workflow to deploy the website. You can either create a manual workflow (which didn't work for me), or use the **pages** option under **settings**. |
| 20 | + |
| 21 | +## 🔍 Understanding the template |
| 22 | + |
| 23 | +### 👀 Overview |
| 24 | + |
| 25 | +The template is currently divided into |
| 26 | + |
| 27 | +- a front page: where you can introduce yourself and share any exiting news that you have |
| 28 | +- the meta data: stores all the information about the authors and affiliations |
| 29 | +- a publication overview: a listing of all the exiting projects you took part in |
| 30 | +- the individual project pages: provide more details about your projects on these pages |
| 31 | + |
| 32 | +Of course it is possible to add more pages such as a CV. For this, you must get familiar with jekyll itself. But it is not too difficult. |
| 33 | + |
| 34 | +### 🧑 The front page |
| 35 | + |
| 36 | +The landing page of your website. Share any information you want to share, give a short introduction and present any exiting news. You should also replace the image in `assets/images/profile-photo.jpg` with a picture of you. The information presented on the page is found in `_config.yaml`, `_layouts/welcome.hmtl`, and `_data/news.yml`. |
| 37 | + |
| 38 | +`_config.yaml` includes the information presented on the left side of the front page. This includes your |
| 39 | + |
| 40 | +- name |
| 41 | +- file name for your photo |
| 42 | +- short bio |
| 43 | +- links to social media containing a `label`, `icon`, and `url` |
| 44 | + |
| 45 | +Apart from that `_config.yaml` includes informations about the theme used. ❗ Only touch this if you know what you are doing. |
| 46 | + |
| 47 | +`_layouts/welcome.hmtl` fills the right column with content and imports the news from `_data/news.yml`. It is a *jekyll* so, either change it carefully or familirize yourself with the *jekyll* proceedure. |
| 48 | + |
| 49 | +`_data/news.yml` contains the news entries you want to share ordered by date. It is a simple `.yml` file with a list. Each list entry contains |
| 50 | + |
| 51 | +- date |
| 52 | +- description |
| 53 | + |
| 54 | +So nothing fancy. |
| 55 | + |
| 56 | +### Ⓜ️ The meta data |
| 57 | + |
| 58 | +Are you tired of always searching for peoples website or the names of affiliations. Is if **TU Munich**, **Technical University Munich**, or **Technical University of Munich**? In the files `_data/affiliations.yaml`, `_data/authors_external.yaml`, and `_data/authors_internal.yaml` you store the information about you and your co-authors and their affiliations so you avoid mistakes in the future. |
| 59 | + |
| 60 | +For authors, the scheme is |
| 61 | +``` |
| 62 | +{shortname}: |
| 63 | + first_name: ... |
| 64 | + last_name: ... |
| 65 | + website: (optional) |
| 66 | + is_me: true # to mark yourself |
| 67 | +``` |
| 68 | +For affiliations it is: |
| 69 | +``` |
| 70 | +{shortname}: |
| 71 | + long: ... |
| 72 | + short: ... |
| 73 | +``` |
| 74 | + |
| 75 | +### 🖼️ The publication overview |
| 76 | + |
| 77 | +This collects all your publications to a central place. It lists all the publications from the newest to the oldest. The layout is defined in `_pages/publication_overview.html`. However, the idea is, that you do not need to add anything manually. The layout automatically gets all the relevant information from the individual publications in `_publications/*` and formats them automatically with title, authors, venue. It even allows for a thumbnail with mouseover that even supports video sequences. |
| 78 | + |
| 79 | +### 📖 The individual publications |
| 80 | + |
| 81 | +This is where you should spend most of your time. Every publication is a subdirectory of `_publications` containing at least an `index.md` file. However, if you want to also have a proper publication page, you should also add a `content.hmtl` file and an assets folder. The layout of the header for the publications is defined in `_layouts/publications.html`. |
| 82 | + |
| 83 | +`index.md` contains all the meta information about publications that is used in `_layouts/publications.html` to generate the header and provide the information for the publication overview. We show an example file to introduce the different options |
| 84 | + |
| 85 | +``` |
| 86 | +layout: publications # defines the layout used for this publication. Leave it as publications or create your own layout under _layouts |
| 87 | +permalink: /publications/pnec/ # defines the link used to publish the website |
| 88 | +date: 2022_05_26 # determines sorting just take the date of the first publication as YYYY_MM_DD |
| 89 | +image: assets/teaser.pdf # defines the asset used in the thumbnail for the publication overview. Doesn't have to be a local file, can also use a file from another repository, e.g. if the actual project page is somewhere external |
| 90 | +image_mouseover: assets/trajectory_8.pdf # defines the mouseover asset. Also supports .mp4 otherwise same as above |
| 91 | +
|
| 92 | +title: "Probabilistic Normal Epipolar Constraint for Frame-To-Frame Rotation Optimization under Uncertain Feature Positions" # Should be self-explanatory |
| 93 | +venue: CVPR, 2022 # Should be self-explanatory |
| 94 | +authors: # A list of authors with their affiliations (based on the affiliations list at the bottom). As affiliations are not constant, this is one of the easiest solutions. Add equal_contribution to denote equal contribution |
| 95 | + - name: dominikmuhle |
| 96 | + affiliations: "1" |
| 97 | + equal_contribution: True |
| 98 | + - name: lukaskoestler |
| 99 | + affiliations: "1" |
| 100 | + equal_contribution: True |
| 101 | + - name: nikodemmel |
| 102 | + affiliations: "1" |
| 103 | + - name: florianbernard |
| 104 | + affiliations: "1,2" |
| 105 | + - name: danielcremers |
| 106 | + affiliations: "1" |
| 107 | + |
| 108 | +affiliations: # The list of the affiliations based on the numbers above. Also denote whether you want the short or long version. |
| 109 | + - name: tum |
| 110 | + length: short |
| 111 | + - name: bonn |
| 112 | + length: short |
| 113 | + |
| 114 | +description: "We propose a probabilistic extension to the normal epipolar constraint (NEC) which we call the PNEC. It allows to account for keypoint position uncertainty in images to produce more accurate frame to frame pose estimates." # A short description for the project overview |
| 115 | +
|
| 116 | +links: # A list of links you want add to your publication e.g. paper, code, video, poster, etc. The project page is mandatory and can either be a local link or an external link. This is used only on the overview page. You can add symbols to your links with the style attribute. However, I have no idea where to look this up. |
| 117 | + - name: Project Page |
| 118 | + link: /publications/pnec/ |
| 119 | + - name: Paper |
| 120 | + link: https://arxiv.org/abs/2204.02256 |
| 121 | + style: "bi bi-file-earmark-richtext" |
| 122 | + - name: Code |
| 123 | + link: https://github.com/tum-vision/pnec |
| 124 | + style: "bi bi-github" |
| 125 | + - name: Video |
| 126 | + link: https://youtu.be/YraCHnR5dmg |
| 127 | + style: "bi bi-youtube" |
| 128 | +citation: '@inproceedings{muhle2022pnec, |
| 129 | + author = {D Muhle and L Koestler and N Demmel and F Bernard and D Cremers}, |
| 130 | + title = {The Probabilistic Normal Epipolar Constraint for Frame-To-Frame Rotation Optimization under Uncertain Feature Positions}, |
| 131 | + booktitle = {IEEE Conference on Computer Vision and Pattern Recognition (CVPR)}, |
| 132 | + year = {2022}, |
| 133 | +}' # (Optional) A citation, that is automatically formatted with linebreaks and tabs. That took me a very long time. If provided, it will create a citation section a handy citation buttion that will copy this to the clipboard on the project page and the overview. |
| 134 | +acknowledgements: 'We thank our colleagues, especially Florian Hofherr, for proofreading and helpful discussions. This work was supported by the ERC Advanced Grant SIMULACRON and by the Munich Center for Machine Learning.' # (Optional) Will add a acknowledgements section on the project page. |
| 135 | +``` |
| 136 | + |
| 137 | +The rest of the project page you have to define in the `content.html` file, where the template cannot help you anymore execpt to provide you with examples. More, maybe later. |
0 commit comments