Làm cách nào để tạo video Stop Motion hoặc Time-lapse bằng webcam?


28

Tôi có một webcam hoạt động như một thiết bị v4l2.

Cách thuận tiện nhất để quay video stop-motion hoặc time-lapse là gì?

Lưu ý

stop-motion và time-lapse có liên quan nhưng khác nhau về mặt khái niệm.

Time-lapse là nơi bạn chụp ảnh một cảnh trong một khoảng thời gian định sẵn và sau đó kết hợp nó thành một video (có vẻ như nó sẽ rất nhanh).

Dừng chuyển động là nơi bạn điều khiển cảnh và chụp ảnh cho mỗi thay đổi bạn thực hiện, để tạo thành một hình ảnh động (ví dụ: Wallace và Grommit).

Một ứng dụng cho thời gian trôi đi cần có thể chụp ảnh theo một khoảng thời gian đã đặt.


Câu hỏi tương tự trong Ảnh có câu trả lời thú vị mà một phần trùng lặp.
Anarcat

Câu trả lời:


40

Chụp một tỷ hình ảnh.

Bước đầu tiên là chụp ảnh. Hãy tưởng tượng bạn muốn chụp ảnh cứ sau 10 giây và lưu nó vào một thư mục trên máy tính để bàn của bạn

mkdir ~/Desktop/cap
cd ~/Desktop/cap

Chúng tôi sử dụng streamerđể chụp, vì vậy hãy cài đặt nó:

sudo apt-get install streamer

Và bây giờ chúng tôi muốn chụp

streamer -o 0000.jpeg -s 300x200 -j 100 -t 2000 -r 1

-tlà số lượng khung hình chúng tôi muốn chụp. -rlà khung hình mỗi giây. Vì vậy, điều này sẽ lấy một khung hình mỗi giây. Nếu bạn nén nó xuống thành video 30 khung hình / giây, một phút quay sẽ trở thành 2 giây video. Bạn sẽ muốn điều chỉnh điều này một cách thích hợp tùy thuộc vào số lượng video bạn muốn.

Dòng đó sẽ cung cấp cho bạn 2000 hình ảnh, sẽ mất nửa giờ để ghi lại và, ở tốc độ 30 khung hình / giây, sẽ tạo ra chỉ hơn 1 phút video.

Để tất cả chúng cùng nhau

Tôi sẽ sử dụng ffmpeg. Có nhiều cách khác nhau để kết hợp nó lại bao gồm mencodernhưng tôi chỉ thích cách ffmpegnhìn về cuộc sống. Sau khi cài đặt nó ( sudo apt-get install ffmpeg) chỉ cần wang ra điều này:

ffmpeg -r 30 -i %04d.jpeg -s hd480 -vcodec libx264 -vpre hq time-lapse.mp4

Các cài đặt chất lượng không có gì giống với webcam của tôi, vì vậy bạn có thể muốn chơi xung quanh với các tùy chọn nhiều hơn nữa để có được mã hóa tốt hơn, nhưng điều đó sẽ tạo cho bạn một video 30fps đẹp, được nén trong x264.

Bạn có thể muốn chơi xung quanh với tốc độ khung hình ( -r) nhưng tôi sẽ không xuống dưới 15 khung hình / giây.


1
Cứ mười giây sẽ cần -r 0.1.
Seppo Erviälä

man streamerkhông mô tả ehat mỗi tham số nào. Tôi có thể lấy thông tin về jtham số ở đâu? Làm cách nào tôi có thể bắt nó chụp cho đến khi tôi nhấn CTRL + C, với FPS đã cho?
Tomáš Zato - Phục hồi Monica

@oli ffmpegkhông làm việc nữa đối với tôi. Tôi nên sử dụng cái gì?
Tim

1
@ChrisH Về mặt kỹ thuật thì tốt, tôi chỉ có nghĩa là đó là cơ bản cho video mượt mà. Điều đó phần lớn phụ thuộc vào việc bạn dùng chúng nhanh như thế nào.
Oli

2
@ TomášZato streamer -hlà toàn diện hơn nhiều. Tôi ghét khi các nhà phát triển nỗ lực rất nhiều --helpnhưng không có gì cho trang man.
WasabiFlux

9

Để chụp mỗi giây X từ chuyển động của webcam, hãy sử dụng chuyển động.

cài đặt, dựng lên motion

sudo apt-get install motion hoặc là sudo aptitude install motion

Định cấu hình chuyển động cho mỗi X giây

sudo nano /etc/motion/motion.conf

Thay đổi các biến tối thiểu_frame_timesnapshot_interval thành cùng số giây bạn muốn chụp ảnh bằng webcam.

10 phút = 600 giây
20 phút = 1200 giây
30 phút = 1800 giây
1 giờ = 3600 giây
2 giờ = 7200 giây và cứ thế ...

chạy chuyển động với sudo motiondừng nó với CTRL+C

LƯU Ý - Định cấu hình motion.conf để lưu các tệp trong thư mục khác ngoài mặc định / tmp. Ví dụ thư mục nhà của bạn. Vì đi đến / tmp cần nhiều đặc quyền hơn. Bạn cũng sẽ tìm thấy nhiều tùy chọn hữu ích trong Motion.conf cho nhiều thứ khác mà bạn có thể thích.


Điều đó tốt hơn nhiều so với streamer. Không chắc chắn tôi thích một giải pháp bắt buộc phải có, và có vẻ như tôi mất khả năng sử dụng nó như gương chiếu hậu, nhưng nó tốt hơn nhiều so với streamer, và có thể giải quyết một vấn đề khác mà tôi muốn xem xét tại, nơi chỉ chụp ảnh nếu tôi ở đó. Sẽ đánh dấu điều này giải quyết nếu tôi có thể khắc phục các vấn đề khác.
Dave Jacoby

Trên thực tế bạn không cần quyền truy cập root để sử dụng nó. Bạn chỉ cần quyền truy cập root để chỉnh sửa tập tin cấu hình.
Luis Alvarado

Tôi cho rằng nếu bạn muốn viết vào đường dẫn mặc định, điều đó cũng có thể cần thiết, nhưng đó là điều đầu tiên tôi thay đổi. Cảm ơn.
Dave Jacoby

Không vấn đề gì đâu anh bạn. Vui mừng được giúp đỡ.
Luis Alvarado

Tôi đã thử nó. Nó hoạt động tốt. Tôi có thể thử lại vào một lúc nào đó. Nhưng nó không mang lại cho tôi khía cạnh phía sau, mà tôi đánh giá cao hơn so với chụp ảnh tự động. Vì vậy, tôi đang chạy Cheese ngay bây giờ.
Dave Jacoby

7

gTimelapse ( Liên kết tải xuống )

nhập mô tả hình ảnh ở đây

Một ứng dụng để chụp ảnh để tạo video timelapse, được xây dựng trên các thư viện gPhoto2 và wxWidgets.

Biên soạn hướng dẫn

Tải về nguồn từ trang web sourceforge

trong một loại thiết bị đầu cuối như sau:

cd Downloads 
gunzip gtimelapse-0.1.tar.gz
tar -xvf gtimelapse-0.1.tar
cd gtimelapse
sudo apt-get install build-essential libgphoto2-2-dev libwxbase2.8-dev libwxgtk2.8-dev gphoto2
./configure
make
sudo make install

Để chạy loại ứng dụng

gtimelapse &

nb 1

gphoto2 --list-cameras | more

nb 2

xem blog này để biết thêm thông tin hữu ích

liệt kê tất cả các thiết bị tương thích mà ứng dụng hỗ trợ

nb 3

Tôi đã đọc gphoto2 không hỗ trợ webcam - dù sao tôi cũng sẽ để câu trả lời này hiển thị trong trường hợp bất kỳ ai cũng muốn thử câu trả lời này với một máy ảnh kỹ thuật số phong nha thay vì webcam.


Phải mất khá nhiều thời gian để tìm nạp và biên dịch wxWidgets với tất cả các điều kiện tiên quyết. Tôi cũng đã biên dịch gTimelapse nhưng nó chỉ gặp sự cố với: [Gỡ lỗi] 13:21:12: ./src/common/menucmn.cpp(859): khẳng định "mục" không thành công trong Check (): wxMothy :: Check: không có mục nào như vậy [Gỡ lỗi] Tạo theo dõi ngăn xếp ... vui lòng đợi Bẫy / điểm dừng
Seppo Erviälä

ok - Hôm nay tôi sẽ đi một mình để xây dựng bản thân - Tôi sẽ thêm một số hướng dẫn vào câu trả lời của mình (giả sử tôi có thể tự mình lấy cái này để xây dựng).
fossfreedom

Điều này thực sự khá hữu ích vì tôi có một máy ảnh kỹ thuật số được hỗ trợ bởi gphoto2. Tôi không biết một thư viện như thế này tồn tại.
Seppo Erviälä

1

Tôi đã sử dụng Stopmotion để làm điều này, đó là trong trung tâm phần mềm. Bạn cũng có thể chụp bằng Cheese, nhưng bạn phải thay đổi cấu hình của Cheese để tăng số lượng hình ảnh tối đa. Tôi thấy dễ dàng nhất khi chỉ sử dụng Stopmotion cho toàn bộ quá trình.


1

Cách tốt nhất và dễ dàng để làm điều này là cài đặt Motion . Đây là phần mềm giám sát toàn diện cho các hệ điều hành dựa trên Linux.

Cài đặt qua trung tâm phần mềm


1

Một tùy chọn nhanh, bẩn, nhưng có phần linh hoạt hơn như sau:

ffmpeg -pattern_type glob -framerate 25 -i 'image-*.jpg' -c:v libx264 \
    -profile:v high -crf 20 -pix_fmt yuv420p output.mp4

Ở đây tôi đang thêm -pattern_type glob, sử dụng ký tự đại diện *và đặt tên tệp của tôi trong các trích dẫn duy nhất : 'image-*.jpg'.

Lợi ích: Cú pháp này cho phép bạn bắt đầu ở bất kỳ số nào và có bất kỳ mẫu nào trong cách đánh số của bạn (tôi thường tạo số đếm bằng 20, bắt đầu khoảng 20000 chẳng hạn).

Hạn chế: Cú pháp này không cho phép bạn bỏ qua các số liệu lặp lại như cú pháp '% ## d' cho phép. Ngoài ra, bạn không thể có sơ đồ đánh số mà không có 0 trước. Nghĩa là, lược đồ đặt tên tệp phải giống như 00001, 00002, ... 00033 ... (Việc đánh số không thể là 1,2,3, ... 33, ..., nếu không, số '3' sẽ sắp xếp giữa '39 'và' 40 'chẳng hạn).

Một cách riêng biệt, cũng lưu ý rằng tôi phải đặt tên tệp đầu vào của mình trong các dấu ngoặc kép, nếu không ffmpeg đã cố ghi đè tất cả các tệp ảnh của tôi bằng một bản sao của ảnh đầu tiên (Luôn luôn là một ý tưởng tốt để sao lưu trước khi thao tác các tệp ).

Từ chỉnh sửa này bởi một người dùng ẩn danh.


0

Bạn sẽ có thể thiết lập chuyển động (trong motion.conf) để phát trực tuyến - theo mặc định, nó phát trực tiếp trên cổng 8081. Tất cả những gì bạn phải làm để có được gương 'xem phía sau' là mở VLC, "Open Network Stream" và trỏ nó tại http: // localhost: 8081 .


0

Camorama là trình xem / ghi webcam mà tôi đã từng chụp ảnh, trong khoảng thời gian 1 phút và tải chúng lên máy chủ web, từ webcam của tôi; đó là một thiết lập đơn giản. Ngoài ra, nó có sẵn trong Trung tâm phần mềm Ubuntu hoặc bạn có thể cài đặt nó bằng cách sử dụng:

sudo apt-get install camorama

Hi vọng điêu nay co ich.


Xin lỗi, chỉ cần thấy rằng bạn đã viết webcam của bạn không hoạt động với Camorama.
kicsyromy

Bạn có thể vui lòng giải thích chi tiết hơn? Con người không bao gồm tùy chọn timelapse :(
Mars Robertson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.