분류 전체보기 538

pymeshlab decimation 안되는 버그

데이터 처리하다가 우연히 발견한 버그인데, pymeshlab의 decimation 기능이 제대로 동작 안할 때가 있다. import pymeshlab as mlms = ml.MeshSet()ms.load_new_mesh(ply_path)m = ms.current_mesh()num_verts = m.vertex_number()num_faces = m.face_number()simp_ratio = 0.1ms.meshing_decimation_quadric_edge_collapse_with_texture(targetperc=simp_ratio)ms.save_current_mesh(obj_path, save_textures=True, save_vertex_normal=False) 뭐 이런 식으로 pymeshla..

Trouble/Vision 2024.09.11

ubuntu 구글 드라이브 압축 없이 파일 올리기/다운받기

google drive로 공유된 파일들은 자동으로 다운받을 때 압축 과정을 거친다. 파일 사이즈가 클 때 시간이 오래 걸릴 뿐더러 압축이 실패하는 경우도 빈번하고, 더욱 짜증나는 부분은 제멋대로 분할 압축한다는 것이다.  사진 보관 정도의 사용자라면 별 문제 없겠지만 데이터 공유용으로 쓸 경우, 속도나 이름/구조 따위가 중요하기 때문에 구글 드라이브가 답답한 부분이 많다. 다행히도 위 언급한 자동압축/속도/분할압축 문제 중에 속도만 해결할 수 없고 압축 관련된 건 구글 드라이브를 직접 mount하는 방식으로 피할 수 있다. (매 파일 클릭해서 다운로드하는 수고를 덜어주는 것 만해도 감사하다.) 해결법https://99rdp.com/how-to-connect-google-drive-in-ubuntu/ Ho..

Knowhow/Linux 2024.09.10

docker 사용 시 /var/run/docker.sock permission denied 문제

docker container 띄워서 작업을 하려고 하는데 다음과 같이 권한 문제가 나왔다. permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: 접근 권한 문제인데 보통 local에서 아무 세팅하지 않으면 root만 docker에 접근 가능하다. 매번 sudo docker ~~~라고 쳐야되는 것 보면 알 수 있음. 위와 같은 경우는 십중팔구 docker container를 띄우는 shell script 같은 걸 실행했을 때 마주하는 문제일텐데, shell script 안에서 sudo를 남발할 수 없기 때문에 script를 수정하는 방법은 지양하는게 좋다.  해결 방법은 도커 ..

Trouble/Docker 2024.09.04

conda 먹통문제. Error while loading conda entry point: conda-libmamba-solver (libarchive.so.19: cannot open shared object file: No such file or directory)

Error while loading conda entry point: conda-libmamba-solver (libarchive.so.19: cannot open shared object file: No such file or directory)CondaValueError: You have chosen a non-default solver backend (libmamba) but it was not recognized. Choose one of: classic 잘 쓰던 conda가 어느날 위와 같이 에러를 뱉기 시작했다. conda env list 정도의 출력 커맨드를 제외하곤 앵무새처럼 계속 위와 같이 에러를 계속 뱉는다. 원인은 모르겠다... 해결법conda install --solver=class..

Trouble/Others 2024.09.04

Trimesh load_mesh, export 시 texture 제대로 안 읽히고 저장 안될 때

Trimesh를 이용해 obj 파일을 읽고, 편집 후 다시 export하는 과정에서 texture가 제대로 읽히고 저장되지 않는 문제가 있다. obj file을 열어보면 vt 값도 제대로 있고 mtllib 또한 제대로 적혀있는데 texture가 안 읽어지거나 export 했을 때 texture map이 2x2 크기로 아무 쓰레기 값이 저장되는 상황이다.  mesh.export(..., file_type="obj", include_texture=True) 와 같이 argument를 True로 추가해도 해결되지 않는다.  Meshlab에 띄워보면 제대로 텍스처가 보이지만, trimesh로 볼 때만 안 나온다. 원인이건 obj 파일 내부에 usemtl가 안 적혀있어서 그렇다!  trimesh가 texture ..

Trouble/Vision 2024.09.02

Michelangelo: Conditional 3D Shape Generation based on Shape-Image-Text Aligned Latent Representation

내 맘대로 Introduction MeshAnything 코드를 뜯어보다가 이 논문의 encoder를 사용하는 것을 보고 읽어보았는데 아이디어가 좋은 것 같다. 다루는 문제는 image to mesh 혹은 text to mesh 문제인데 image/text latent에서 바로 mesh로 가는 방식 대신 중간 매개체로 3D shape latent를 구해놓는 것이 핵심이다. 또한 3D shape latent가 image/text latent와의 유사성을 유지하도록 강제함으로써 기존 방대한 양으로 구해둔 image/text prior도 취할 수 있도록 했다.  image/text보다 mesh에 더 가까운 차원인 3D shape latent로부터 diffusion해서 mesh를 만들기 때문에 divide-an..

Paper/Generation 2024.08.30

Facescape 모델 68 keypoint/landmark index

https://facescape.nju.edu.cn/ FaceScape facescape.nju.edu.cn 위 데이터셋 중 TU model은 topology가 통일되어 있으므로 landmark에 해당하는 vertex index만 알면 모든 데이터의 landmark를 찾아낼 수 있다.  https://github.com/zhuhao-nju/facescape/tree/master/toolkit/predef facescape/toolkit/predef at master · zhuhao-nju/facescapeFaceScape (PAMI2023 & CVPR2020). Contribute to zhuhao-nju/facescape development by creating an account on GitHub...

Knowhow/Vision 2024.08.28

obj 파일 v, vt, f 등 직접 저장하기, obj save

obj 파일은 v, vn (normal), vt(texture uv), f 등 vertex 위치와 face 구성 외에 몇가지 정보를 같이 들고 있을 수 있다. https://en.wikipedia.org/wiki/Wavefront_.obj_file Wavefront .obj file - WikipediaFrom Wikipedia, the free encyclopedia Geometry definition file format OBJ (or .OBJ) is a geometry definition file format first developed by Wavefront Technologies for its Advanced Visualizer animation package. The file format is..

Knowhow/Vision 2024.08.28

Facescape 모델 displacement map 사용법, detailed mesh 얻어내는 방법

https://facescape.nju.edu.cn/ FaceScape facescape.nju.edu.cn Face mesh 데이터셋 중 오래됐지만 여전히 많이 쓰이는 데이터 중 하나인 facescape 데이터셋. TU model이라는 이름으로 topology를 맞춰놓은 데이터가 특히 사용하기 좋다.  TU model은 근데 생각보다 해상도(mesh vertex, face 수)가 높지 않은데 데이터 자체의 용량을 줄이기 위해서 coarse와 fine을 분리해놨기 때문이다. 그냥 obj 파일에 담겨있는 mesh는 coarse 즉 vertex 수도 적고 face도 적은 기본 template mesh를 registration해둔 결과다. 그 이외 fine detail은 displacement map담겨 있다..

Knowhow/Vision 2024.08.28

Sapiens: Foundation for Human Vision Models

내 맘대로 Introduction 제목과 대문 사진만 봐도 드디어 나올게 나왔나 싶은 Human foundation model. 네이버랩스 유럽에서 Croco-man이라는 이름으로 human foundation model을 CVPR24에 시도하긴 했지만 스케일에서 압도적이다. 300만장의 사람 사진 + A100 1024장으로 18일 동안 학습... 해상도도 1024x1024에다 파라미터 수가 20억개가 넘는다.  핵심 내용은 사실 없다. Masked autoencoder (MAE) 방식을 토씨 하나 안 빼놓고 그대로 적용한 것이다. 대신 데이터가 human으로 한정되고 엄청나게 많이 때려넣었다는 것이 유일한 차이. 그래도 개인적으로 논문이라기 보다 테크니컬 리포트에 가까운 것 같다. MAE 방식으로 hu..

Paper/Human 2024.08.26