PointCNN: Convolution On X-Transformed Points (NeurIPS 2018)

Overview

PointCNN: Convolution On X-Transformed Points

Created by Yangyan Li, Rui Bu, Mingchao Sun, Wei Wu, Xinhan Di, and Baoquan Chen.

Introduction

PointCNN is a simple and general framework for feature learning from point cloud, which refreshed five benchmark records in point cloud processing (as of Jan. 23, 2018), including:

  • classification accuracy on ModelNet40 (91.7%, with 1024 input points only)
  • classification accuracy on ScanNet (77.9%)
  • segmentation part averaged IoU on ShapeNet Parts (86.13%)
  • segmentation mean IoU on S3DIS (65.39%)
  • per voxel labelling accuracy on ScanNet (85.1%)

See our preprint on arXiv (accepted to NeurIPS 2018) for more details.

Pretrained models can be downloaded from here.

Performance on Recent Benchmarks

Revisiting Point Cloud Classification: A New Benchmark Dataset and Classification Model on Real-World Data

PartNet: A Large-scale Benchmark for Fine-grained and Hierarchical Part-level 3D Object Understanding

ABC: A Big CAD Model Dataset For Geometric Deep Learning

Practical Applications

3D cities: Deep Learning in three-dimensional space (from Esri)

PointCNN: replacing 50,000 man hours with AI (from Esri)

Point Cloud Segmentation using PointCNN in ArcGIS API for Python (from Esri)

More Implementations

We highly welcome issues, rather than emails, for PointCNN related questions.

License

Our code is released under MIT License (see LICENSE file for details).

Code Organization

The core X-Conv and PointCNN architecture are defined in pointcnn.py.

The network/training/data augmentation hyper parameters for classification tasks are defined in pointcnn_cls, for segmentation tasks are defined in pointcnn_seg.

Explanation of X-Conv and X-DeConv Parameters

Take the xconv_params and xdconv_params from shapenet_x8_2048_fps.py for example:

xconv_param_name = ('K', 'D', 'P', 'C', 'links')
xconv_params = [dict(zip(xconv_param_name, xconv_param)) for xconv_param in
                [(8, 1, -1, 32 * x, []),
                 (12, 2, 768, 32 * x, []),
                 (16, 2, 384, 64 * x, []),
                 (16, 6, 128, 128 * x, [])]]

xdconv_param_name = ('K', 'D', 'pts_layer_idx', 'qrs_layer_idx')
xdconv_params = [dict(zip(xdconv_param_name, xdconv_param)) for xdconv_param in
                 [(16, 6, 3, 2),
                  (12, 6, 2, 1),
                  (8, 6, 1, 0),
                  (8, 4, 0, 0)]]

Each element in xconv_params is a tuple of (K, D, P, C, links), where K is the neighborhood size, D is the dilation rate, P is the representative point number in the output (-1 means all input points are output representative points), and C is the output channel number. The links are used for adding DenseNet style links, e.g., [-1, -2] will tell the current layer to receive inputs from the previous two layers. Each element specifies the parameters of one X-Conv layer, and they are stacked to create a deep network.

Each element in xdconv_params is a tuple of (K, D, pts_layer_idx, qrs_layer_idx), where K and D have the same meaning as that in xconv_params, pts_layer_idx specifies the output of which X-Conv layer (from the xconv_params) will be the input of this X-DeConv layer, and qrs_layer_idx specifies the output of which X-Conv layer (from the xconv_params) will be forwarded and fused with the output of this X-DeConv layer. The P and C parameters of this X-DeConv layer is also determined by qrs_layer_idx. Similarly, each element specifies the parameters of one X-DeConv layer, and they are stacked to create a deep network.

PointCNN Usage

PointCNN is implemented and tested with Tensorflow 1.6 in python3 scripts. Tensorflow before 1.5 version is not recommended, because of API. It has dependencies on some python packages such as transforms3d, h5py, plyfile, and maybe more if it complains. Install these packages before the use of PointCNN.

If you can only use Tensorflow 1.5 because of OS factor(UBUNTU 14.04),please modify "isnan()" to "std::nan()" in "/usr/local/lib/python3.5/dist-packages/tensorflow/include/tensorflow/core/framework/numeric_types.h" line 49

Here we list the commands for training/evaluating PointCNN on classification and segmentation tasks on multiple datasets.

  • Classification

    • ModelNet40

    cd data_conversions
    python3 ./download_datasets.py -d modelnet
    cd ../pointcnn_cls
    ./train_val_modelnet.sh -g 0 -x modelnet_x3_l4
    
    • ScanNet

    Please refer to http://www.scan-net.org/ for downloading ScanNet task data and scannet_labelmap, and refer to https://github.com/ScanNet/ScanNet/tree/master/Tasks/Benchmark for downloading ScanNet benchmark files:

    scannet_dataset_download

    |_ data

    |_ scannet_labelmap

    |_ benchmark

    cd ../data/scannet/scannet_dataset_download/
    mv ./scannet_labelmap/scannet-labels.combined.tsv ../benchmark/
    
    #./pointcnn_root
    cd ../../../pointcnn/data_conversions
    python extract_scannet_objs.py -f ../../data/scannet/scannet_dataset_download/data/ -b ../../data/scannet/scannet_dataset_download/benchmark/ -o ../../data/scannet/cls/
    python prepare_scannet_cls_data.py -f ../../data/scannet/cls/
    cd ../pointcnn_cls/
    ./train_val_scannet.sh -g 0 -x scannet_x3_l4
    
    • tu_berlin

    cd data_conversions
    python3 ./download_datasets.py -d tu_berlin
    python3 ./prepare_tu_berlin_data.py -f ../../data/tu_berlin/ -a --create-train-test
    cd ../pointcnn_cls
    ./train_val_tu_berlin.sh -g 0 -x tu_berlin_x3_l4
    
    • quick_draw

    Note that the training/evaluation of quick_draw requires LARGE RAM, as we load all stokes into RAM and converting them into point cloud on-the-fly.

    cd data_conversions
    python3 ./download_datasets.py -d quick_draw
    cd ../pointcnn_cls
    ./train_val_quick_draw.sh -g 0 -x quick_draw_full_x2_l6
    
    • MNIST

    cd data_conversions
    python3 ./download_datasets.py -d mnist
    python3 ./prepare_mnist_data.py -f ../../data/mnist
    cd ../pointcnn_cls
    ./train_val_mnist.sh -g 0 -x mnist_x2_l4
    
    • CIFAR-10

    cd data_conversions
    python3 ./download_datasets.py -d cifar10
    python3 ./prepare_cifar10_data.py
    cd ../pointcnn_cls
    ./train_val_cifar10.sh -g 0 -x cifar10_x3_l4
    
  • Segmentation

    We use farthest point sampling (the implementation from PointNet++) in segmentation tasks. Compile FPS before the training/evaluation:

    cd sampling
    bash tf_sampling_compile.sh
    
    • ShapeNet

    cd data_conversions
    python3 ./download_datasets.py -d shapenet_partseg
    python3 ./prepare_partseg_data.py -f ../../data/shapenet_partseg
    cd ../pointcnn_seg
    ./train_val_shapenet.sh -g 0 -x shapenet_x8_2048_fps
    ./test_shapenet.sh -g 0 -x shapenet_x8_2048_fps -l ../../models/seg/pointcnn_seg_shapenet_x8_2048_fps_xxxx/ckpts/iter-xxxxx -r 10
    cd ../evaluation
    python3 eval_shapenet_seg.py -g ../../data/shapenet_partseg/test_label -p ../../data/shapenet_partseg/test_data_pred_10 -a
    
    • S3DIS

    Please refer to data_conversions for downloading S3DIS, then:

    cd data_conversions
    python3 prepare_s3dis_label.py
    python3 prepare_s3dis_data.py
    python3 prepare_s3dis_filelists.py
    mv S3DIS_files/* ../../data/S3DIS/out_part_rgb/
    ./train_val_s3dis.sh -g 0 -x s3dis_x8_2048_fps -a 1
    ./test_s3dis.sh -g 0 -x s3dis_x8_2048_fps -a 1 -l ../../models/seg/s3dis_x8_2048_fps_xxxx/ckpts/iter-xxxxx -r 4
    cd ../evaluation
    python3 s3dis_merge.py -d <path to *_pred.h5>
    python3 eval_s3dis.py
    

We use a hidden marker file to note when prepare is finished to avoid re-processing. This cache can be invalidated by deleting the markers.

Please notice that these command just for Area 1 (specified by -a 1 option) validation. Results on other Areas can be computed by iterating -a option.

  • ScanNet

Please refer to data_conversions for downloading ScanNet, then:

cd data_conversions
python3 prepare_scannet_seg_data.py
python3 prepare_scannet_seg_filelists.py
cd ../pointcnn_seg
./train_val_scannet.sh -g 0 -x scannet_x8_2048_k8_fps
./test_scannet.sh -g 0 -x scannet_x8_2048_k8_fps -l ../../models/seg/pointcnn_seg_scannet_x8_2048_k8_fps_xxxx/ckpts/iter-xxxxx -r 4
cd ../evaluation
python3 eval_scannet.py -d <path to *_pred.h5> -p <path to scannet_test.pickle>
  • Semantic3D

Please check the free disk space before start, about 900 GB will be required.

cd data_conversions
bash download_semantic3d.sh
bash un7z_semantic3d.sh
python3 prepare_semantic3d_data.py
mkdir ../../data/semantic3d/filelists
python3 prepare_semantic3d_filelists.py
cd ../pointcnn_seg
./train_val_semantic3d.sh -g 0 -x semantic3d_x4_2048_fps
./test_semantic3d.sh -g 0 -x semantic3d_x4_2048_fps -l <path to ckpt>
cd ../evaluation
python3 semantic3d_merge.py -d <path to *_pred.h5> -v <reduced or full>
  • Tensorboard

    If you want to monitor your train step, we recommend you use the following command
    cd <your path>/PointCNN
    tensorboard --logdir=../models/<seg/cls> <--port=6006>
    
Comments
  • ./train_val_modelnet.sh -g 0 -x modelnet_x3_l4

    ./train_val_modelnet.sh -g 0 -x modelnet_x3_l4

    hello ,when I excute the commad: ./train_val_modelnet.sh -g 0 -x modelnet_x3_l4 it just print "Train/Val with setting modelnet_x3_l4 on GPU 0!",but no any other action,why???

    opened by chunhuaqiushi1989 15
  • issue about the tf_sampling_compile.sh

    issue about the tf_sampling_compile.sh

    when I compile tf_sampling_so.so file some warning happened: nvcc warning : The 'compute_20', 'sm_20', and 'sm_21' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning). but the tf_sampling_so.so compiled successfully then I run the command: ./train_val_shapenet.sh -g 0 -x shapenet_x8_2048_fps error messages in pointcnn_seg_shapenet_x8_2048_fps.txt like that: Traceback (most recent call last): File "../train_val_seg.py", line 295, in main() File "../train_val_seg.py", line 127, in main net = model.Net(points_augmented, features_augmented, is_training, setting) File "/home/whf/ZYM/PointCNN/pointcnn_seg.py", line 11, in init PointCNN.init(self, points, features, is_training, setting) File "/home/whf/ZYM/PointCNN/pointcnn.py", line 64, in init from sampling import tf_sampling File "/home/whf/ZYM/PointCNN/sampling/tf_sampling.py", line 15, in sampling_module=tf.load_op_library(os.path.join(BASE_DIR, 'tf_sampling_so.so')) File "/home/whf/anaconda3/envs/tf_gpu/lib/python3.6/site-packages/tensorflow/python/framework/load_library.py", line 58, in load_op_library lib_handle = py_tf.TF_LoadLibrary(library_filename, status) File "/home/whf/anaconda3/envs/tf_gpu/lib/python3.6/site-packages/tensorflow/python/framework/errors_impl.py", line 516, in exit c_api.TF_GetCode(self.status.status)) tensorflow.python.framework.errors_impl.NotFoundError: /home/whf/ZYM/PointCNN/sampling/tf_sampling_so.so: undefined symbol: _ZN10tensorflow8internal21CheckOpMessageBuilder9NewStringEv

    My environment as follows: gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.4) tensorflow 1.6.0

    opened by YamingZ 11
  • Visualization of the segmentation results

    Visualization of the segmentation results

    Hello, thanks for sharing your great work with us here! I just downloaded the ScanNet dataset for semantic segmentation task, and I have finished the training and testing. When I wanted to visualize the results, I found that every ply file is just a tiny part of the whole scene. How can I visualize the result of the whole scene? I have no idea which files belong to the same scene. Does every h5 file contain several different scenes?

    opened by RicheyHuang 10
  • Memory Error

    Memory Error

    When I test the semantic3d data set, my computer has 64GB of memory. Memory Error appears when I prepare data and train. How much memory does it need?

    opened by ruanhailiang 9
  • tf_sampling_so.so error while training

    tf_sampling_so.so error while training

    Hi, I followed the steps in the Semantic3d dataset and used a custom dataset to train. I was able to create .h5 and all steps were successful. But when I run, ./train_val_semantic3d.sh -g 0 -x semantic3d_x4_2048_fps :
    inside models/seg -> the log file shows the following error: tf_sampling_so.so: cannot open shared object file: No such file or directory

    I checked the existing issues (https://github.com/charlesq34/pointnet2/issues/48) and made changes to Pointcnn/sampling/tf_sampling_compiler.sh but still did not work.

    I am using the TensorFlow version = 1.15, python 3.6, conda environment(Used pip command to install tf as mentioned in one of the issues. Still didn't work) Any help on how to resolve this issue? Regards Niranjan

    opened by NiranjanRavi1993 8
  • Undefined name 'tnet'

    Undefined name 'tnet'

    https://github.com/yangyanli/PointCNN/blob/master/pointnetpp_cls/utils/pointnet_util.py#L49

    flake8 testing of https://github.com/yangyanli/PointCNN

    $ flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics

    ./pointnetpp_cls/utils/pointnet_util.py:49:23: F821 undefined name 'tnet'
            grouped_xyz = tnet(grouped_xyz, tnet_spec)
                          ^
    1     F821 undefined name 'tnet'
    
    opened by cclauss 8
  • Classification on large *.ply data

    Classification on large *.ply data

    Hi, Thank you for sharing your work. My 3D face dataset contains large ply files. For example:

    ply
    format ascii 1.0
    element vertex 166368
    property float x
    property float y
    property float z
    element face 156797
    property list uchar int vertex_indices
    end_header
    -50.8063 31.0753 83.1526
    ...
    3 37583 37611 37610 
    ...
    

    And i should do the classification basing on these ply files but I have no idea how to implement it using PointCNN. What should i do?

    Thank you. tsly

    opened by tsly123 7
  • ScanNet classification, can't obtain 9,305/2,606 training/testing instances

    ScanNet classification, can't obtain 9,305/2,606 training/testing instances

    How did you fix the benchmark files to reach 9,305/2,606 instances, as you mentioned in issue #29 ?

    Can you update the benchmark files with the fixed files (maybe scannet-labels.combined.tsv and classes_ObjClassification-ShapeNetCore55.txt in ./data_conversions)? Thanks.

    opened by Yochengliu 7
  • ImportError: No module named sampling in Python 2.7

    ImportError: No module named sampling in Python 2.7

    Hi, I am able to compile the sampling file but can't use it. I am using python 2.7 and Tensorflow 1.7.0 When I want to import sampling in pointcnn.py, I got the following error :

      File "/home/yjm/Project/PointCNN11_24_new/code/pointcnn.py", line 69, in __init__
        from sampling import tf_sampling
    ImportError: No module named sampling
    

    However, when I compile sampling, I got no error. My tf_sampling_compile.sh file is :

    #/bin/bash
    PYTHON=python
    nvcc=/usr/local/cuda/bin/nvcc
    cudalib=/usr/local/cuda/lib64
    tensorflow=/home/yjm/anaconda3/envs/py27_1/lib/python2.7/site-packages/tensorflow/include
    TF_INC=$($PYTHON -c 'import tensorflow as tf;print(tf.sysconfig.get_include())')
    TF_LIB=$($PYTHON -c 'import tensorflow as tf;print(tf.sysconfig.get_lib())')
    
    $nvcc tf_sampling_g.cu -o tf_sampling_g.cu.o -c -O2 -DGOOGLE_CUDA=1 -x cu -Xcompiler -fPIC
    g++ -std=c++11 tf_sampling.cpp tf_sampling_g.cu.o -o tf_sampling_so.so -shared -fPIC -I $tensorflow -I$TF_INC/external/nsync/public -L$TF_LIB -ltensorflow_framework -I /usr/local/cuda/include -lcudart -L /usr/local/cuda/lib64/ -O2
    

    I would be very grateful if you give me some suggestions ! Thanks!

    opened by jialancong 7
  • Problem on Reproducing Scannet Segmentation Results

    Problem on Reproducing Scannet Segmentation Results

    Hi,

    I tried to reproduce the results for Scannet Dataset on Segmentation Task but I cannot reproduce the mentioned results. The accuracy just around 77.76% (Validation) and ~85% for training data. I used the "pointnet++ preprocessed data" with provided scannet-seg hyper-parameters.

    Can you give me a clue what I should do to reproduce the result? And also how long do you train the model to achieve the published result?

    opened by hasanari 7
  • could not run the code

    could not run the code

    Hi, I could not run the code using the commands you give.

    (pointcnn) [email protected]:/mnt/Ubuntu/PointCNN-master/pointcnn_cls$ ./train_val_modelnet.sh -g 0 -x modelnet_x3_l4 Train/Val with setting modelnet_x3_l4 on GPU 0! (pointcnn) [email protected]:/mnt/Ubuntu/PointCNN-master/pointcnn_cls$

    It echos "Train/Val with setting modelnet_x3_l4 on GPU 0!" but exits immediately. What's the problem?

    opened by rruixxu 6
  • ScannetV2 for point cloud Classification get too high performace

    ScannetV2 for point cloud Classification get too high performace

    Thanks for your work! When i use your code extract scannet dataset for 3D classification , I get 12060 examples for training and 3416 for testing. It seems that scannetv2 is different from scannetv1. However , when i train it with pointnet and pointnet++, I respectively get the best performance 89.34 and 90.35! It is higher than your paper's result. Do anyone have the same founding with me? Is it normal phenomenon due to the Scannetv2 is easy to classify than Scannetv1(i guess that in 2018 , Scannet just release V1) or i make some mistakes which cause my dataset wrong?

    Thanks for anyone's answer. Best regards. ╰(°▽°)╯

    opened by jumptiger66 0
  • PointCNN Part segmentation model details

    PointCNN Part segmentation model details

    Dear author,

    I am interested in finding out the model size for PointCNN part segmentation, but I could only find the information for PointCNN classification network. Could you please report what is GMac for PointCNN part segmentation network? Thank you very much in advance.

    opened by edshkim98 0
  • Regarding custom dataset

    Regarding custom dataset

    Hi. Thank you for the repository.

    I wanted to ask if it is possible to get any guidance regarding the custom dataset. I have my own dataset i.e. X, Y, Z points with labels (4 columns in total) in txt files. I wanted to know how I can create a data loader for custom data and train the network.

    opened by pytholic 7
  • How to run PointCNN

    How to run PointCNN

    Hi everyone,

    I am pretty new in Neural Networks, can anyone share with me which parameters do you use? In which formats are (number, dictionary, array)? How do you run the class PointCNN?

    Thank you in advance!

    opened by elinausmanova 0
  • Creating Confusion matrix from predicted results

    Creating Confusion matrix from predicted results

    I am trying to create (and plot) a confusion matrix for a multilabel dataset that has the predicted results structured in the same way the S3DIS results. I'm having trouble with creating the confusion matrix from the results and I am wondering if anyone has figured out how to do this. Any help would be greatly appreciated!

    opened by jobberz77 0
Releases(v1.0)
给yolov5加个gui界面,使用pyqt5,yolov5是5.0版本

博文地址 https://xugaoxiang.com/2021/06/30/yolov5-pyqt5 代码执行 项目中使用YOLOv5的v5.0版本,界面文件是project.ui pip install -r requirements.txt python main.py 图片检测 视频检测

Xu GaoXiang 215 Dec 30, 2022
[peer review] An Arbitrary Scale Super-Resolution Approach for 3D MR Images using Implicit Neural Representation

ArSSR This repository is the pytorch implementation of our manuscript "An Arbitrary Scale Super-Resolution Approach for 3-Dimensional Magnetic Resonan

Qing Wu 19 Dec 12, 2022
CPPE - 5 (Medical Personal Protective Equipment) is a new challenging object detection dataset

CPPE - 5 CPPE - 5 (Medical Personal Protective Equipment) is a new challenging dataset with the goal to allow the study of subordinate categorization

Rishit Dagli 53 Dec 17, 2022
Code and datasets for the paper "Combining Events and Frames using Recurrent Asynchronous Multimodal Networks for Monocular Depth Prediction" (RA-L, 2021)

Combining Events and Frames using Recurrent Asynchronous Multimodal Networks for Monocular Depth Prediction This is the code for the paper Combining E

Robotics and Perception Group 69 Dec 26, 2022
Python package provinding tools for artistic interactive applications using AI

Documentation redrawing Python package provinding tools for artistic interactive applications using AI Created by ReDrawing Campinas team for the Open

ReDrawing Campinas 1 Sep 30, 2021
A PyTorch Toolbox for Face Recognition

FaceX-Zoo FaceX-Zoo is a PyTorch toolbox for face recognition. It provides a training module with various supervisory heads and backbones towards stat

JDAI-CV 1.6k Jan 06, 2023
Calling Julia from Python - an experiment on data loading

Calling Julia from Python - an experiment on data loading See the slides. TLDR After reading Patrick's blog post, we decided to try to replace C++ wit

Abel Siqueira 8 Jun 07, 2022
一个多模态内容理解算法框架,其中包含数据处理、预训练模型、常见模型以及模型加速等模块。

Overview 架构设计 插件介绍 安装使用 框架简介 方便使用,支持多模态,多任务的统一训练框架 能力列表: bert + 分类任务 自定义任务训练(插件注册) 框架设计 框架采用分层的思想组织模型训练流程。 DATA 层负责读取用户数据,根据 field 管理数据。 Parser 层负责转换原

Tencent 265 Dec 22, 2022
List some popular DeepFake models e.g. DeepFake, FaceSwap-MarekKowal, IPGAN, FaceShifter, FaceSwap-Nirkin, FSGAN, SimSwap, CihaNet, etc.

deepfake-models List some popular DeepFake models e.g. DeepFake, CihaNet, SimSwap, FaceSwap-MarekKowal, IPGAN, FaceShifter, FaceSwap-Nirkin, FSGAN, Si

Mingcan Xiang 100 Dec 17, 2022
Numenta Platform for Intelligent Computing is an implementation of Hierarchical Temporal Memory (HTM), a theory of intelligence based strictly on the neuroscience of the neocortex.

NuPIC Numenta Platform for Intelligent Computing The Numenta Platform for Intelligent Computing (NuPIC) is a machine intelligence platform that implem

Numenta 6.3k Dec 30, 2022
Code repository for paper `Skeleton Merger: an Unsupervised Aligned Keypoint Detector`.

Skeleton Merger Skeleton Merger, an Unsupervised Aligned Keypoint Detector. The paper is available at https://arxiv.org/abs/2103.10814. A map of the r

北海若 48 Nov 14, 2022
Optimized code based on M2 for faster image captioning training

Transformer Captioning This repository contains the code for Transformer-based image captioning. Based on meshed-memory-transformer, we further optimi

lyricpoem 16 Dec 16, 2022
This is a project based on ConvNets used to identify whether a road is clean or dirty. We have used MobileNet as our base architecture and the weights are based on imagenet.

PROJECT TITLE: CLEAN/DIRTY ROAD DETECTION USING TRANSFER LEARNING Description: This is a project based on ConvNets used to identify whether a road is

Faizal Karim 3 Nov 06, 2022
Softlearning is a reinforcement learning framework for training maximum entropy policies in continuous domains. Includes the official implementation of the Soft Actor-Critic algorithm.

Softlearning Softlearning is a deep reinforcement learning toolbox for training maximum entropy policies in continuous domains. The implementation is

Robotic AI & Learning Lab Berkeley 997 Dec 30, 2022
Editing a Conditional Radiance Field

Editing Conditional Radiance Fields Project | Paper | Video | Demo Editing Conditional Radiance Fields Steven Liu, Xiuming Zhang, Zhoutong Zhang, Rich

Steven Liu 216 Dec 30, 2022
Контрольная работа по математическим методам машинного обучения

ML-MathMethods-Test Контрольная работа по математическим методам машинного обучения. Вычисление основных статистик, диаграмм и графиков, проверка разл

Stas Ivanovskii 1 Jan 06, 2022
Creative Applications of Deep Learning w/ Tensorflow

Creative Applications of Deep Learning w/ Tensorflow This repository contains lecture transcripts and homework assignments as Jupyter Notebooks for th

Parag K Mital 1.5k Dec 30, 2022
GAN-generated image detection based on CNNs

GAN-image-detection This repository contains a GAN-generated image detector developed to distinguish real images from synthetic ones. The detector is

Image and Sound Processing Lab 17 Dec 15, 2022
a generic C++ library for image analysis

VIGRA Computer Vision Library Copyright 1998-2013 by Ullrich Koethe This file is part of the VIGRA computer vision library. You may use,

Ullrich Koethe 378 Dec 30, 2022
CLIPort: What and Where Pathways for Robotic Manipulation

CLIPort CLIPort: What and Where Pathways for Robotic Manipulation Mohit Shridhar, Lucas Manuelli, Dieter Fox CoRL 2021 CLIPort is an end-to-end imitat

246 Dec 11, 2022