Illuminated3D This project participates in the Nasa Space Apps Challenge 2021.

Overview

NASA-Space-Apps-Challenge-2021

Illuminated3D This project participates in the Nasa Space Apps Challenge 2021.

Documentation of the Illuminat3d App

Version 1.0

The main scope of this application is to plot the light curve of an asteroid for certain values of the input variables. The project consists of two .py files (.py and .py).

GUIFinal.py file

This is the file that we create the User Interface (UI) of our application. It have a space that the user load his 3D model (.stl file format). Then the user must fill in every enrty of the variables in the right form and finally push the Run Program button to see the light curve plot in the corresponding window. The User Interface except all the widgets (Button, Label, Entry, Images) has and 3 functions:

  • browseFiles(): in this function we set the directory that the application can search to find the user's 3D model. When a file is selected then the label of the file explorer change text to specify the path of the file.
  • popup_window_1(): function that triggered when the info button is pressed and pops out an information message.
  • checkInputs(): in this function we check the validity of the input variables and then create an Illuminated object to start running the main program.

Illuminated_Class_Git.py file

In this file we create a class Illuminated to control the core of our program and to plot the light curves of the input 3D models. This class has several functions to produce the expected output.

  • __ init__(self, filename, initRot, rotAxis, frames, albedo, omega): is the contructor of the class which assigns the proper values to the class variables. It recieves as inputs the filename of the 3D model(filename), the initial rotation axis and angle (initRot), the rotational axis (rotAxis), the number of frames (frames), the albedo (albedo) and the omega angle(omega).
  • checkTheModel(self): this function check if the 3D model that the user inserted is valid(close object). Return boolean value True or False.
  • computeIntersectionsAreas(self, multi): recieves a Multipolygon object and returns its total area.
  • multColumns(self, col1, col2): recieves two arrays and produce a new one of the same length. Each element of this array is the multiplication of the two initial arrays' corresponding elements (i.e. new_col[5] = col1[5]*col2[5])
  • sortCoords(self, arr, ind): this is an extra function which sorts the rows of the 2D arr array under the 1D index array.
  • sortDist(self, arr, ind): this is an extra function which sorts the values of the 1D arr array under the 1D index array.
  • desortDist(self, arr, ind): with this function we de-sort the distances array back to its initial structure.
  • computeCoefs(self, coords, dist, dots): compute the coefficients array depending on the coordinates, distances and dots arrays. By taking one triangle at a time we compute the area of each triangle that is seen by the viewer.
  • n_vec(self, tha, thb, thc): return a normalized vector as the cosines of the given angles tha, thb, thc. Each input is the angle that this vector forms with the corresponding axix (x, y, z).
  • v_surf(self, cube ,n_v): return the viewing surface when looking in the n_v direction (either as the source or as the viewer).
  • execution(self): in this function we calibrate the model with its rotation and the position of the light and the viewer and we plot the asteroid's light curve. The number of the plot's points is implied by the number of frames.

Installation

Use the package manager pip to install the necessary libraries.

pip install python-math
pip install numpy-stl
pip install matplotlib
pip install tk
pip install shapely

Execution

After you download the project in your computer, you must move to the directory that the python files are and run the command below.

python GUIFinal.py

Members

  1. Doli Maria
  2. Eleftheriadis Emmanouil
  3. Komitis Dimitrios
  4. Liodis Ioannis
  5. Noula Konstantina
  6. Rodiou Eirini
Owner
Eleftheriadis Emmanouil
Eleftheriadis Emmanouil
Code related to the manuscript "Averting A Crisis In Simulation-Based Inference"

Abstract We present extensive empirical evidence showing that current Bayesian simulation-based inference algorithms are inadequate for the falsificat

Montefiore Artificial Intelligence Research 3 Nov 14, 2022
Official implementation of CATs: Cost Aggregation Transformers for Visual Correspondence NeurIPS'21

CATs: Cost Aggregation Transformers for Visual Correspondence NeurIPS'21 For more information, check out the paper on [arXiv]. Training with different

Sunghwan Hong 120 Jan 04, 2023
Machine Learning in Asset Management (by @firmai)

Machine Learning in Asset Management If you like this type of content then visit ML Quant site below: https://www.ml-quant.com/ Part One Follow this l

Derek Snow 1.5k Jan 02, 2023
Learning Spatio-Temporal Transformer for Visual Tracking

STARK The official implementation of the paper Learning Spatio-Temporal Transformer for Visual Tracking Hiring research interns for visual transformer

Multimedia Research 484 Dec 29, 2022
Generating Band-Limited Adversarial Surfaces Using Neural Networks

Generating Band-Limited Adversarial Surfaces Using Neural Networks This is the official repository of the technical report that was published on arXiv

3 Jul 26, 2022
Official pytorch implementation of "DSPoint: Dual-scale Point Cloud Recognition with High-frequency Fusion"

DSPoint Official implementation of "DSPoint: Dual-scale Point Cloud Recognition with High-frequency Fusion". Paper link: https://arxiv.org/abs/2111.10

Ziyao Zeng 14 Feb 26, 2022
Detectron2 for Document Layout Analysis

Detectron2 trained on PubLayNet dataset This repo contains the training configurations, code and trained models trained on PubLayNet dataset using Det

Himanshu 163 Nov 21, 2022
An algorithmic trading bot that learns and adapts to new data and evolving markets using Financial Python Programming and Machine Learning.

ALgorithmic_Trading_with_ML An algorithmic trading bot that learns and adapts to new data and evolving markets using Financial Python Programming and

1 Mar 14, 2022
YoloAll is a collection of yolo all versions. you you use YoloAll to test yolov3/yolov5/yolox/yolo_fastest

官方讨论群 QQ群:552703875 微信群:15158106211(先加作者微信,再邀请入群) YoloAll项目简介 YoloAll是一个将当前主流Yolo版本集成到同一个UI界面下的推理预测工具。可以迅速切换不同的yolo版本,并且可以针对图片,视频,摄像头码流进行实时推理,可以很方便,直观

DL-Practise 244 Jan 01, 2023
Visual Tracking by TridenAlign and Context Embedding

Visual Tracking by TridentAlign and Context Embedding (TACT) Test code for "Visual Tracking by TridentAlign and Context Embedding" Janghoon Choi, Juns

Janghoon Choi 32 Aug 25, 2021
一套完整的微博舆情分析流程代码,包括微博爬虫、LDA主题分析和情感分析。

已经将项目的关键文件上传,包含微博爬虫、LDA主题分析和情感分析三个部分。 1.微博爬虫 实现微博评论爬取和微博用户信息爬取,一天大概十万条。 2.LDA主题分析 实现文档主题抽取,包括数据清洗及分词、主题数的确定(主题一致性和困惑度)和最优主题模型的选择(暴力搜索)。 3.情感分析 实现评论文本的

182 Jan 02, 2023
PyTorch implementation of Weak-shot Fine-grained Classification via Similarity Transfer

SimTrans-Weak-Shot-Classification This repository contains the official PyTorch implementation of the following paper: Weak-shot Fine-grained Classifi

BCMI 60 Dec 02, 2022
nfelo: a power ranking, prediction, and betting model for the NFL

nfelo nfelo is a power ranking, prediction, and betting model for the NFL. Nfelo take's 538's Elo framework and further adapts it for the NFL, hence t

6 Nov 22, 2022
MLJetReconstruction - using machine learning to reconstruct jets for CMS

MLJetReconstruction - using machine learning to reconstruct jets for CMS The C++ data extraction code used here was based heavily on that foundv here.

ALPhA Davidson 0 Nov 17, 2021
Code for database and frontend of webpage for Neural Fields in Visual Computing and Beyond.

Neural Fields in Visual Computing—Complementary Webpage This is based on the amazing MiniConf project from Hendrik Strobelt and Sasha Rush—thank you!

Brown University Visual Computing Group 29 Nov 30, 2022
Official repository of "Investigating Tradeoffs in Real-World Video Super-Resolution"

RealBasicVSR [Paper] This is the official repository of "Investigating Tradeoffs in Real-World Video Super-Resolution, arXiv". This repository contain

Kelvin C.K. Chan 566 Dec 28, 2022
Painting app using Python machine learning and vision technology.

AI Painting App We are making an app that will track our hand and helps us to draw from that. We will be using the advance knowledge of Machine Learni

Badsha Laskar 3 Oct 03, 2022
Image Deblurring using Generative Adversarial Networks

DeblurGAN arXiv Paper Version Pytorch implementation of the paper DeblurGAN: Blind Motion Deblurring Using Conditional Adversarial Networks. Our netwo

Orest Kupyn 2.2k Jan 01, 2023
Deep Learning Based EDM Subgenre Classification using Mel-Spectrogram and Tempogram Features"

EDM-subgenre-classifier This repository contains the code for "Deep Learning Based EDM Subgenre Classification using Mel-Spectrogram and Tempogram Fea

11 Dec 20, 2022
Simple STAC Catalogs discovery tool.

STAC Catalog Discovery Simple STAC discovery tool. Just paste the STAC Catalog link and press Enter. Details STAC Discovery tool enables discovering d

Mykola Kozyr 21 Oct 19, 2022