
The term "Penrose Triangle" can refer to the 2-dimensional depiction or the impossible object itself.
There also exist three-dimensional solid shapes each of which, when viewed from a certain angle, appears the same as the 2-dimensional depiction of the Penrose triangle on this page (such as – for example – the adjacent image depicting a sculpture in Perth, Australia). Such an object can exist in certain Euclidean 3-manifolds. This combination of properties cannot be realized by any three-dimensional object in ordinary Euclidean space. The beams may be broken, forming cubes or cuboids. The tribar/triangle appears to be a solid object, made of three straight beams of square cross-section which meet pairwise at right angles at the vertices of the triangle they form. At the moment of illusion, there appears to be a pair of purple faces (one partially occluded) joined at right angles, but these are actually parallel faces, and the partially occluded face is internal, not external. Also note that we used the above package versions for running the results used in our paper, and while it may be possible to run the project with other versions, we cannot gauruntee compatibility.A rotating Penrose triangle model to show illusion. Please note that additional packages may be needed in line with requirements of the above. If desired, then run IoU_values.py to calculate background attention statistics, and analysis_utils.py to perform additional analysis (t-tests of possible vs impossible accuracy, etc.), and gcam_all_layers_alexnet.py to get gradCAM results for all layers of AlexNet.This will aggregate and compile all results, then save them to Results/Study 1 and Results/Study 2. Once this is done, run process_results.py.Run test_train_utils.py until completion and repeat with each CNN listed in the config.py (and for each study).Write the following instead: train_test_network(, study_num=).
IMPOSSIBLE SHAPES CODE
Go to train_test_utils.py and delete all code below if _name_ = "_main_":. In order to do this, please do the following: If the above fails (returns an RunTimeError: out of memory), it may be necessary to run the DNN training (and testing) separately for each network. This process may take a long time, even with a GPU, as there are a total of 12 networks (6 pretrained and 6 without pretraining) which need to be trained over 20 different seeds. This will train the CNNs and save the results and models to Results/Raw. Ensure necessary Python packages are installed (listed below). Note that we do not recommend running this study without a GPU as the training the DNNs is an extremely long and computationally intensive process. In order to run a copy of our CNN study locally, please pull a copy of the repository and then follow the instructions below. Results/Shapes contains the dataset of matched possible and impossible shapes. They also contain sub-directories with the more detailed results for each DNN (e.g. The above directories contain some summary tables and figures of DNN performance. Study 2 contains results for the main study (impossible controlled for background size). Study 1 contains results for the impossible shapes before background size was controlled. Study 0 is the circle-square control study. The above directory contains results titled Study 0, Study 1 and Study 2:. The Results directory contains the results from the CNN study, as well as some additional analysis of images. The Python code and analysis (CNN study) is contained in the main directory of this repository. MATLAB code and associated analysis of human participant data can be found in the Human Participant Study directory. The repository is structured in the following way: The analysis of the human participant data was in MATLAB. The convolutional neural network (CNN) study and associated analysis was performed in Python. This repository contains the code for obtaining the results in the paper above.