CORAE is a web-based tool to support the collection of continuous affect data.
Note When installing Python, ensure to add it to your system's environment variables. There is a setting within the Python installer to perform this task automatically.
-
Install git.
-
Install Python3.
-
Install FFmpeg.
-
Navigate to the directory that you would like
CORAEto be downloaded. -
Download the
CORAEweb repository.
$ git clone https://www.github.com/mjsack/CORAE.git- Run
build_windows.batvia Windows Explorer, or using the following command:
$ .\build_windows.bat- Install
Python3.
$ sudo apt install wget git python3 python3-venv- Install
FFmpeg.
$ sudo apt install ffmpeg-
Navigate to the directory that you would like
CORAEto be downloaded. -
Download the
CORAEweb repository.
$ git clone https://www.github.com/mjsack/CORAE.git- Run
build_linux.sh.
$ bash build_linux.sh-
Navigate to your install directory.
-
Run
launch.batvia Windows Explorer, or using the following command:
$ .\launch.bat- Access the app on your local machine by visiting http://localhost:5000 in your web browser.
-
Navigate to your install directory.
-
Run
launch.shusing the following command:
$ bash launch.sh- Access the app on your local machine by visiting http://localhost:5000 in your web browser.
We developed CORAE to be an accessible, intuitive, and highly customizable tool for capturing continuous affect data from participants through media annotation.
Depending on the needs of your project, there are many solutions for making your deployment publicly accessible. For smaller-scale adhoc sessions, tunneling services such as ngrok may suffice.
Crucially, unless manually changed, CORAE is served on port 5000.
Below are the descriptions for settings available for configuration in CORAE. Some of the settings below are displayed conditionally, such that their value is assigned to a default state unless specific conditions are met.
Determines how participants input their annotations.
CORAE: This is the standard method for annotation that enables annotation along a single linear dimension.
Determines how many participants each session will accomodate.
Determines how videos are associated with participants.
Coupledassigns each participant as the 'owner' of a specific video during session creation. Participants will annotate each other video in the session except for that which they are 'owner' of.Decoupledassociates each participant with each video without establishing any 'owner' relationships. Each participant will annotate each video in the session without exception.
Determines the order in which participants will be presented videos for annotation during their session.
Randompresents each participant videos for annotation in a pseudo-random order.Orderedpresents each participant videos for annotation in a predetermined order.
Determines whether or not ratings with the annotation slider are numerically bound.
Boundedrestricts the annotation slider to a predetermined range of values the cannot be exceeded.Unboundedrestricts input for the annotation slider to either 'positive' or 'negative' adjustments, but is numerically unrestricted.
Determines the number of values on the annotation scale, excluding the neutral point of zero. This setting can be assigned any even-numbered integer value. This setting is only modifyable if Bounding is set to Bounded.
Determines the label for the scale axis indicating to participants the affective dimension they should evaluate during their session. This setting can be assigned any string of characters. Particularly lengthy axis labels may wrap to the next line to avoid overlap with the Ceiling and Floor labels.
Determines the label for the right-most, or positive, value of the scale axis. This setting can be assigned any string of characters. Particularly lengthy Ceiling labels may wrap to the next line to avoid overlap with the Primary Axis label.
Determines the label for the left-most, or negative, value of the scale axis. This setting can be assigned any string of characters. Particularly lengthy Floor labels may wrap to the next line to avoid overlap with the Primary Axis label.
The Admin Dashboard acts as the landing page for research management. From this page, you may create new Projects and Presets, view details for and delete each of them as desired. To prevent accidental deletions, there is a protection in place that requires two successive clicks on the delete button.
The View Project page displays details pertaining to all sessions in a project, namely, project status, and a list of participants associated with each session.
The View Session page allows for the review of details pertaining to a specific project session, including the progress of each participant across the session. The colored bar above each participant card is indicitive of their status. Red indicates that they have yet to join their session, Yellow indicates that they have joined their session and are currently performing annotations, and Green indicates that they have submitted their annotations.
Copyright (c) 2021-2023 Cornell University
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.



