Eine Webanwendung zum Sammeln von Daten aus paarweisen Bildvergleiche über Crowdsourcing. Gebaut mit Mern Stack.
Das Calista-Team hat diese App entwickelt und verwendet, um einen vergleichsbasierten Datensatz in der Website-Ästhetik zu erstellen.
Beispiel aus dem Bewertungsprozess :

Papier: "Calista: Ein tief lernbasiertes System zum Verständnis und zur Bewertung der Website-Ästhetik"
@article{DELITZAS2023,
title = {Calista: A deep learning-based system for understanding and evaluating website aesthetics},
journal = {International Journal of Human-Computer Studies},
volume = {175},
pages = {103019},
year = {2023},
issn = {1071-5819},
doi = {https://doi.org/10.1016/j.ijhcs.2023.103019},
url = {https://www.sciencedirect.com/science/article/pii/S1071581923000253},
author = {Alexandros Delitzas and Kyriakos C. Chatzidimitriou and Andreas L. Symeonidis}
}
Fügen Sie eine .env -Datei in den Stammordner des Projekts hinzu und setzen Sie die folgenden Variablen:
| Umgebungsvariable | Beschreibung |
|---|---|
| Mongo_uri | MongoDB -Verbindungszeichenfolge |
| HAFEN | Serverport |
| Mongo_port | MongoDB -Port |
| Me_config_mongodb_adminusername | MongoDB -Benutzername |
| Me_config_mongodb_adminpassword | MongoDB -Passwort |
| Me_config_basicauth_username | Mongo-Express-Benutzername |
| Me_config_basicauth_password | Mongo-Express-Passwort |
| Node_env | Knotenumgebungsvariable |
| VORTEILUNG_ROUNDS | Anzahl der Abstimmungsrunden jeder Stimmensitzung |
| Abstimmung_Time | Abstimmungszeit in Sekunden jedes Vergleichs |
| Number_of_images | Anzahl der Bilder in Front-End/Public/Bildern// |
| BasisaRl | Basis -URL, die für die Anfragen verwendet wird |
Dieser Schritt ist erst zum ersten Mal erforderlich, wenn Sie die Anwendung ausführen. Dies kann einige Minuten dauern, da die erforderlichen Bilder heruntergeladen werden. Wenn Sie diesen Schritt bereits einmal erfolgreich abgeschlossen haben, können Sie Direktion auf Schritt 4 springen.
Tl; dr :
Führen Sie den folgenden Befehl aus:
./setup.sh --create --sortimages
Detailliertere Optionen :
Die Bilder in Front-End/Public/Images/müssen mit Zahlen ab 0 (z. B. 0.png, 1.png, 2.png, ...) benannt werden. Wenn die Bilder nicht bereits in diesem Format sind, können Sie die Option verwenden -Sortimages, um sie während des Setups automatisch umbenannt zu werden:
./setup.sh --sortimages
Wenn Sie eine neue Datenbank festlegen möchten, müssen die Datei DB/Utils/Comparisons_Data.json die Datei DB/Utils/Vergleiche haben. Diese Datei enthält alle möglichen paarweisen Vergleiche, die zwischen den Bildern mit zufälliger Reihenfolge durchgeführt werden können. Es wird für die Datenbankinitialisierung verwendet. Wenn Sie eine bereits bestehende Vergleiche-Datei für Vergleiche_Data.json verwenden möchten, stellen Sie sicher, dass sie sich in DB/ Utils/ Verzeichnis befindet. Andernfalls können Sie die Option verwenden, um diese Datei während des Setups automatisch zu erstellen:
./setup.sh --create
Wenn Sie eine vorhandene Datenbank wiederherstellen möchten, stellen Sie zunächst sicher, dass Ihre Sicherungsdateien in DB/ Backup/ Verzeichnis verschoben werden. Dann können Sie die Option verwenden -restore = <path_to_database_dump_in_backup_Folder>.
Zum Beispiel, wenn Sie die folgende Struktur hatten,
├── db
│ ├── backup
│ │ ├── 14_04_2020
│ │ │ └── votes
│ │ │ ├── comparisons.bson
│ │ │ ├── comparisons.metadata.json
│ │ │ ├── votesessions.bson
│ │ │ └── votesessions.metadata.json
. . .
. . .
. . .Sie würden rennen:
./setup.sh --restore=14_04_2020/votes
Hinweis : In diesem Fall ist eine Datei mit Vergleiche_Data.json nicht erforderlich.
Sie können auch mehrere Optionen kombinieren oder keine verwenden.
Start:
docker-compose -f docker-compose.yml up --build
Stoppen:
Ctrl-C
Für den distanzierten Modus :
Start:
docker-compose -f docker-compose.yml up -d --build
Stoppen:
docker-compose down