Skip to content

Instantly share code, notes, and snippets.

View natowi's full-sized avatar
:octocat:
I may be slow to respond.

natowi

:octocat:
I may be slow to respond.
  • 05:04 (UTC +02:00)
View GitHub Profile
@adlf-qarnot
adlf-qarnot / meshroom.py
Last active January 29, 2024 23:15
Meshroom on qarnot sample
#!/usr/bin/env python3
# Import the Qarnot SDK
import qarnot
# Create a connection, from which all other objects will be derived
# Enter client token here
conn = qarnot.connection.Connection(client_token="<<<MY_SECRET_TOKEN>>>")
# Create the task
@chunibyo-wly
chunibyo-wly / Meshroom2Colmap.py
Last active April 11, 2024 13:45
convert meshroom structure from motion results to colmap format
import json, os, shutil
from os.path import join, basename
from tqdm import tqdm
import numpy as np
MESHROOM = r"E:\workspace\dataset\01_DTU\cache\20\meshroom\MeshroomCache\ConvertSfMFormat\4b9ced4a64f3f996f7650f3d5ed9e27c4774a7c9\sfm.json"
COLMAP = r"E:\workspace\dataset\01_DTU\cache\20\colmap"
def make_dir(folder):

Introduction

The Openscan project https://openscan.eu is a really cool 3D printing and scanning project. It systematically takes a series of photos that can be stitched together into a 3D model using photogrammetry. Thomas Megel the creator of OpenScan has a really cool cloud-based service that can take the raw photos and turn them an STL model for you. You can read more about it here: https://github.com/OpenScanEu/OpenScan/blob/master/temp/README.md

Another way to take advantage of photogrammetry is using AliceVision's Meshroom. Prusa Research did a nice explainer/tutorial in this blog post: https://blog.prusaprinters.org/photogrammetry-2-3d-scanning-simpler-better-than-ever_29393/

The main "catch" with Meshroom is that it requires CUDA and hence an NVIDIA graphics card. It didn't have an NVIDIA card (and didn't want to figure out how to run in the cloud) but I did have a Jetson Nano 2GB https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-nano/education-projects/

The documentati

Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@Tony607
Tony607 / tensorflow-object-detection-training-colab.ipynb
Created February 12, 2019 02:50
tensorflow-object-detection-training-colab.ipynb
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@simogasp
simogasp / travisDeploy.md
Created January 15, 2018 17:16
Setting up Travis deploy

Setting up Travis deploy

  1. Create an OAuth token from your profile settings
  • under Developer select Personal access token
  • generate a new one and copy it to the clipboard
  1. On the travis page of the repository, go to settings --> More Options->Settings
  2. Set a new Environment Variable called eg GITHUB_RELEASE_API_KEY or whatever u like, and copy the key
  3. In the .travis.yaml file, under add something like that
before_deploy:
 - ARCHIVE_BASE_PATH=${INSTALL_DIR}
@nikolaseu
nikolaseu / lensCalculator.m
Created October 29, 2017 17:09
Lens focal length calculator
% required dimensions
standoff = 500; % distance from camera, in [mm]
fovWidth = 320; % width of field of view, in [mm]
fovHeight = 10; % height of FOV, in [mm]
% sensor resolution
sensorXRes = 4096; % widht
sensorYRes = 3072; % height
% pixel physical size
@alvinwan
alvinwan / requirements.txt
Last active December 7, 2022 07:28
Converts mesh into a point cloud - accepts .pkl,.off,.xaml,.obj etc.
docopt==0.6.2
trimesh==2.10.18
@juancarlospaco
juancarlospaco / sound_play_crossplatform.py
Last active June 28, 2021 20:59
Cross-platform Sound Playing with Standard Libs only, No Sound file is required, No install is required, Python2 / Python3.
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os, sys
from tempfile import gettempdir
from subprocess import call
def beep(waveform=(79, 45, 32, 50, 99, 113, 126, 127)):

The reStructuredText Cheat Sheet: Syntax Reminders

Info

See <http://docutils.sf.net/rst.html> for introductory docs.

Author

David Goodger <goodger@python.org>

Date

$Date: 2013-02-20 01:10:53 +0000 (Wed, 20 Feb 2013) $

Revision

$Revision: 7612 $

Description

This is a "docinfo block", or bibliographic field list

Note

If you are reading this as HTML, please read