Cara membangun sistem penumpukan fokus beragampengetahuan sederhana

 – Beragampengetahuan
14 mins read

Cara membangun sistem penumpukan fokus beragampengetahuan sederhana – Beragampengetahuan

Penumpukan Fokus beragampengetahuan
Pelatuk bertengkar merah (Melanerpes carolinus) dan bellepecker merah berevolusi SARB khusus untuk menarik serangga dari lubang. Difoto dengan rasio penulis menjadi 4,5 × menggunakan lensa makro Canon 65 mm. Di sini, 35 gambar berada dalam satu dengan kedalaman lapangan yang ditingkatkan oleh program heliconibus fokus (hutang tabel kedalaman).

Setiap tahun instrumentasi fotografi saya, siswa membangun sistem penumpukan fokus yang sangat sederhana. Setelah beberapa tahun, memutuskan untuk membangun versi pengembangan yang lebih banyak yang dapat memindahkan tahap stepper, yang digerakkan oleh motor ke posisi yang tepat, secara otomatis memilih serangkaian gambar, dan pengembang menggunakan di lapangan.

Focus Stacking adalah teknis pencitraan digital yang kuat untuk mencapai kedalaman lapangan yang lebih besar (DOF) dalam gambar, gambar makro, dan mikroskop. Ini melibatkan konsep banyak gambar ke titik fokus yang berbeda dan menggabungkannya dalam satu gambar tajam. Teknik ini sangat penting untuk kondisi di mana satu paparan dapat membuat seluruh subjek tetap fokus, seperti gambar suhu.

Saya akan selalu terkejut menemukan banyak fotografer, saya tidak tahu apa fokus yang ditumpuk dan bagaimana digunakan. Dalam yang paling sederhana untuk diterapkan pada gambar makro, fokus penumpukan adalah teknik yang mengumpulkan gambar, menggerakkan fraksi subjek dari kedalaman lapangan, dan gambar lain ke wilayah yang diminati. Setiap gambar dikumpulkan oleh resolusi tertinggi dan lensa untuk dikumpulkan. Gambar tumpukan yang dihasilkan dari kombinasi menggunakan alat khusus dalam program sebagai Photoshop, Helicon Focus atau Zerenen Stacker. Program favorit saya untuk aplikasi ini adalah Helicon Coat, yang disetel aplikasi ini dengan baik.

Sistem Penumpukan Fokus beragampengetahuan
Salinan proses penumpukan fokus di mana banyak gambar digabungkan dalam gambar dengan kedalaman fokus yang besar.

Mereka memfokuskan sistem penumpukan di pasar, tetapi keduanya memiliki keterbatasan, stabilitas badai rel di atas ruang panjang, label harga atau tidak fitur yang diinginkan yang hilang. Saat Anda membangun akun Anda, Anda dapat mendesainnya dengan cara yang Anda inginkan.

Sistem saya dirancang untuk sekitar Canonp-E 65mm f / 2.8 1-5x lensa foto makro dan mencakup perbesaran 1 hingga 5 x. Lensa ini adalah dokumen yang sangat baik dalam pembuatan, dan informasi yang disediakan dalam panduan pengguna yang perlahan.

kedalaman tabel lapangan

Data ini berasal dari manual lensa Canon dan diformat ulang di Photoshop. Area hijau area resolusi tertinggi dan sisa bagan tidak digunakan untuk penumpukan fokus resolusi tinggi. Seorang fotografer dapat digunakan untuk nomor F yang lebih tinggi untuk kedalaman lapangan yang lebih besar, tetapi saya melakukan resolusi kerusakan. Ada saat -saat dengan seorang fotografer bergerak ke angka F yang lebih tinggi untuk mengurangi angka yang diperlukan gambar menutupi lantai dan dengan demikian mengurangi periode resep dan beberapa angka memori komputer.

Untuk kedalaman tahap penumpukan fokus – jempol aturan umum adalah ke bidang kedalaman (DOF) dan memotong jarak menjadi dua. Salah satu salinan dari pengaturan 2x, f / 2.8 adalah untuk memfokuskan langkah stacking rail pada 0,074 mm.

Penumpukan fokus dapat memberikan hasil terbaik dengan subjek yang tepat. Misalnya, subjek fuzzy dengan begitu banyak rambut yang tumpang tindih sering menghasilkan gambar yang membingungkan, dengan objek halus sebagai serangga di mata pencampuran dengan bersih dalam perangkat lunak untuk membuat hasil yang tajam.

Penggunaan penumpukan seringkali merupakan keseimbangan antara waktu investasi dan dimaksudkan untuk mengakhiri gambar. Mudah menghabiskan terlalu banyak waktu untuk menyelesaikan gambar untuk akhirnya dikurangi ke ukuran prangko.

Contents

Membangun Sistem Penumpukan Fokus beragampengetahuan

Proyek dimulai dengan mendapatkan posisi yang ditentukan. Saya merekomendasikan membeli penistaan ​​bekas dan baru-baru ini saya menemukan mesin pipet otomatis mengandung rel berkualitas tinggi serta dua motor stepper yang sangat baik. Mesin -mesin ini sering diperbarui, sehingga komponennya saat ini membanjiri eBay. Petunjuk yang disediakan di sini dirancang tentang motor stepper 12-volt Adafruit, yang murah, tersedia secara luas dan pilihan terbaik untuk beasiswa.

direktur
Untuk mengontrol motor drive rasa TB6600 / TB6660 menggunakan perpustakaan Sakelstepper. Pengontrol ini dapat bekerja dengan beberapa konfigurasi motor kelas yang berbeda dan sangat fleksibel. Masukkan harga pengontrol motor yang sangat benar dalam putaran sepuluh dolar.

Resolusi tingkat linier adalah kombinasi dari jejak revolusi pengemudi dalam proses motor. Panggung saya memiliki pitch sekitar 20 utas dalam inci sebagai string harus berubah 20 kali untuk bergerak 1 inci. Masukkan motor membutuhkan 200 langkah untuk dicabut satu digit (4) derajat atau dalam derajat .0005 inci dan 6,35um per kelas. Sistem ini dirancang untuk menjadi foto di mana lensa F # dan pembesaran menentukan kedalaman lapangan. Resolusi panggung ini akan bekerja dengan baik untuk aplikasi saya.

Keuntungan dari 12VDC menganggap motor yang disediakan oleh Adafruit adalah model kabel yang diketahui, dan eksperimen tidak akan menghancurkan banyak waktu mencoba mencari tahu string string. Motor adalah ukuran bingkai hibrida motor bipolar motor 17 200.0 derajat oleh revolusi dan menggunakan 350 mA hingga 12vdc dan setuju sekitar 14 dolar AS.

Masukkan kejutan modern pengontrol motor. Bagian dari pengontrol memiliki banyak batang dan mengatakan langkah pengontrol oleh revolusi motor serta persyaratan saat ini. Mati hari membuat pengontrol sendiri. Moderator menerima perintah dan segera gerakkan level motor ke depan atau ke belakang.

Sistem Penumpukan Fokus beragampengetahuan
TB6600 / TB6660 Nation Drive memiliki sakelar pengaturan di sampingnya. Sakelar ini diatur ke 12VDC AdaFruit 200 pulsa / pent pada motor.

Pasokan 12 VDC VDC yang digunakan adalah unit umum yang dijual ke pengaturan LED dan dengan harga yang sangat tepat. Tombol tekan untuk mengontrol ke depan, membalikkan dan memulai komponen Arduino standar.

Persyaratan proyek ini adalah untuk membuat sistem penumpukan fokus sederhana yang dapat dibangun oleh setiap siswa. Untuk antarmuka dengan Arduino, saya ingin menggunakan beberapa tombol mungkin.

Tepat di antara setiap gambar, jeda waktu untuk menangkap kedua foto, dan jumlah total gambar harus dimasukkan langsung dalam kode Arduino. Setelah urutan selesai di level secara otomatis kembali ke rumah. Program Arduino yang disediakan di bawah ini berfungsi sebagai titik awal yang baik untuk merancang kode kontrol yang lebih kompleks.

Dalam alur kerja pikirannya adalah nama pengguna langsung menggerakkan tahap awal posisi fokus, menekan tombol start dan mari arduino menangani istirahat. Panggung menggerakkan kamera ke gambar penumpukan fokus berikut yang dikumpulkan.

Tombolnya:

  • 1 Tombol Mulai → Menyimpan Beranda dan Mengatur, Mulai Urutan Kelas. Stepper memindahkan stepdistance ke banyak langkah → mengharapkan waktu dalam detik setiap gambar. Setelah penyelesaian berikut → secara otomatis kembali ke rumah (posisi asli).
  • 2 tombol manual bekerja secara mandiri dengan urutan berjalan.
  • 3 Tombol Penghasilan Manual Bekerja Secara Mandiri Saat Seri Tidak Berjalan.
  • Dan LED mundur menunjukkan arah di atas panggung.
Sistem Penumpukan Fokus beragampengetahuan
Masing -masing tombol untuk menggunakan 10kilo ohm Tarik resistor agar dibiarkan berlari ke aliran tanah. Ini memungkinkan kode untuk memicu dengan pin menjadi tinggi hingga 5 kesenangan.

Sirkuit memicu lorem kamera.

Pemicu kamera menggunakan dua solenoida.

Mesin pemicu lorem
Solenoida merah tidak pada cepat, tetapi Anda perlu menciptakan kesedihan total listrik antara kamera mahal dan Arduino. Mayoritas kamera yang mencari pemicu fokus dan pemicu terapi, jika ketiga kabel daya terhubung sekitar waktu yang sama kamera akan menjadi pemicu. Sirkuit ini bekerja dengan baik untuk kamera Canon, Nikon, dan Sony standar. Terkait dengan Meder DIP05-1A57-BV350.

Untuk membuat umpan balik visual di sekitar untuk melakukan apa yang seharusnya menggunakan beberapa lead. Tanda-tanda-tanda gerakan ke depan dan program penumpukan fokus sedang berjalan.

LED-on-Arduino
Saya suka pergi ke markas di depan dan merah pada pergerakan gerakan, di sini saat ini oleh LED dibatasi oleh resister 330 ohm.

Program ke Arduino


/*
2025FinalFocusStacking.ino
Stepper1 is 200 steps per rev.
Each step is a sequence of 8 pulses controlled by a 
TB6600/TB6660 stepper driver using the AccelStepper library. 
This represents a distance of 6.3um with a standard Adafruit stepping motor.

Modified:
- StartButton triggers a focus stacking sequence.
- Forward and Backward buttons control movement directly.
- Home position is recorded when StartButton is pressed, and the stepper returns to that position after the sequence.

Author: Ted Kinsman (August  2025, emkpph@rit.edu)
*/
// Include the AccelStepper library for smooth motion control
#include <AccelStepper.h>

// Define button pins for manual and automatic control
#define ForwardButton 8   // Button for moving forward on Arduino pin 8
#define BackButton 9      // Button for reversing on Arduino pin 9
#define StartButton 10    // Button to start the focus stacking on Arduino pin 10
#define ShutterTrigger 13 // Camera trigger on Arduino pin 13

// Define LED indicators
#define ForwardLED 11     // LED to indicate forward movement on Arduino pin 11
#define BackLED 12        // LED to indicate reverse movement on Arduino pin 12

// Define stepper motor connections
#define dirPin1 3   // Stepper direction pin on Arduino pin 3
#define stepPin1 2  // Stepper step pin on Arduino pin 2
#define enPin 4     // Enable pin for TB6600 driver on Arduino pin 4

// Motion parameters
const int moveSpeed = 2000;   // Maximum speed (steps per second)
const int accel = 1000;      // Acceleration (steps per second^2)

// Stepper movement variables
int stepDistance = 50;     // Distance the motor moves for each image
int NumberOfPictures = 25;    // Total number of images to capture
bool sequenceRunning = false; // Flag to track if sequence is running
long homePosition = 0;      // Variable to store the dynamic home position

// Create an instance of AccelStepper class
AccelStepper stepper1(AccelStepper::DRIVER, stepPin1, dirPin1);

void setup() {
    // Configure pin modes
    pinMode(enPin, OUTPUT);
    pinMode(ForwardLED, OUTPUT);
    pinMode(BackLED, OUTPUT);
    pinMode(ShutterTrigger, OUTPUT);
    pinMode(ForwardButton, INPUT);
    pinMode(BackButton, INPUT);
    pinMode(StartButton, INPUT);

    // Enable stepper driver (LOW = enabled for most TB6600/TB6660 drivers)
    digitalWrite(enPin, LOW);

    // Configure stepper motor properties
    stepper1.setMaxSpeed(moveSpeed);
    stepper1.setAcceleration(accel);

    // Start serial communication for debugging
    Serial.begin(9600);
    Serial.println("Stepper motor ready. Press Start button to begin sequence.");
}

void loop() {
    // Check if StartButton is pressed and sequence is not running
    if (digitalRead(StartButton) == HIGH && !sequenceRunning) {
        delay(50);  // Debounce delay
        if (digitalRead(StartButton) == HIGH) {  // Double-check if still HIGH
            sequenceRunning = true;  // Mark sequence as running

            // Set the current position as the home position
            homePosition = stepper1.currentPosition();
            Serial.print("Start button pressed. Setting home position to: ");
            Serial.println(homePosition);

            // Ensure button is released before continuing
            while (digitalRead(StartButton) == HIGH);

            // Execute focus stacking sequence
            executeStepSequence();
            
            // Return the stepper to the starting position after sequence is completed
            returnToHome();  

            sequenceRunning = false; // Reset flag after sequence completes
            Serial.println("Focus stacking sequence completed. Returned to start position.");
        }
    }

    // Allow manual movement only when no automated sequence is running
    if (!sequenceRunning) {
        if (digitalRead(ForwardButton) == HIGH) { 
            moveForward(); // Move forward while button is held
        } 
        else if (digitalRead(BackButton) == HIGH) { 
            moveBackward(); // Move backward while button is held
        } 
        else {
            stopMotor(); // Stop motor if no button is pressed
        }
    }
}

// Function to execute the focus stacking step sequence
void executeStepSequence() {
    digitalWrite(enPin, LOW); // Enable motor current
    for (int i = 0; i < NumberOfPictures; i++) {
        Serial.print("Capturing Picture ");
        Serial.println(i + 1);

        // Trigger the camera shutter
        digitalWrite(ShutterTrigger, HIGH);
        delay(10);  // Allow the camera time to respond
        digitalWrite(ShutterTrigger, LOW);

        // Move stepper forward by stepDistance
        stepper1.move(stepDistance);
        digitalWrite(ForwardLED, HIGH);

        // Wait until the stepper completes the movement
        while (stepper1.distanceToGo() != 0) {  
            stepper1.run();
        }

        // Turn off LED after movement is completed
        digitalWrite(ForwardLED, LOW);
        Serial.println("Waiting 3 seconds before next step...");
        delay(3000);  // Wait 3 seconds before next step
    }
}

// **Function to return to the recorded home position**
void returnToHome() {
    Serial.print("Returning to home position: ");
    Serial.println(homePosition);

    // Move stepper back to stored home position
    stepper1.moveTo(homePosition);
    digitalWrite(BackLED, HIGH); // Indicate returning motion

    // Wait until the stepper reaches home position
    while (stepper1.distanceToGo() != 0) {  
        stepper1.run();
    }

    digitalWrite(BackLED, LOW); // Turn off LED after reaching home
    Serial.println("Stepper returned to starting position.");
}

// Function to move forward continuously while button is held
void moveForward() {
    digitalWrite(enPin, LOW); // Enable motor current
    digitalWrite(ForwardLED, HIGH);
    digitalWrite(BackLED, LOW);
    stepper1.setSpeed(moveSpeed);
    stepper1.runSpeed();
}

// Function to move backward continuously while button is held
void moveBackward() {
    digitalWrite(enPin, LOW); // Enable motor current
    digitalWrite(BackLED, HIGH);
    digitalWrite(ForwardLED, LOW);
    stepper1.setSpeed(-moveSpeed);
    stepper1.runSpeed();
}

// Function to stop the motor
void stopMotor() {
    digitalWrite(ForwardLED, LOW);
    digitalWrite(BackLED, LOW);
    stepper1.stop(); // Ensures stepper stops completely
    digitalWrite(enPin, HIGH); // Turn off current to the motor
    Serial.println("Motor Stopped, current disabled.");
}

Catatan dalam program atau sekitar.

Gunakan holding motor bisa sangat kompleks bagi pemula. Masukkan penggerak khas mengambil banyak motor torsi saat ini dan tinggi bisa menjadi sangat panas. Jika motor tidak mengambil beban seperti pada motor aplikasi ini dan dimatikan dan ini membuat motor terlalu panas dan menjaga energi jika aplikasi berjalan pada baterai. Kelanjutan yang benar ketika Anda beralih untuk melanjutkan dan mematikan motor bisa membingungkan.

Logika kode berikut menggunakan nilai tinggi, seperti tombol pot digunakan pin Arduino akan melihat tegangan 5 akhir pekan. Saya melampirkan skema di sekitar sini untuk membantu memahami kabel.

Pemicu kamera selalu tidak pantas untuk siswa. Banyak kamera modern memiliki tiga kabel untuk mengontrol kamera. Dua hal yang terpasang pada kamera akan fokus dan ketiganya di kamera akan menjadi gambar. Sangat mudah untuk mengontrol kabin sirkuit ini menggunakan dua pena yang dirujuk. Satu pulsa menutup dan beralih dan menghubungkan ketiga kabel di pemicu jarak jauh kamera. Restorship juga patuh listrik Arduinoinin dan kamera.

Kesimpulan

Fokus penumpukan adalah teknik penting untuk kedalaman pemenang dari keterbatasan lapangan dalam gambar dan mikroskop. Apakah Anda mengambil struktur mikroskopis atau bidikan tembakan yang rumit, ini hanyalah gambar kecerahan kecerahan dan ketajaman. Dengan bantuan sistem susun otomatis dan perangkat lunak khusus, penumpukan fokus menjadi alat yang dapat diakses dan sangat diperlukan bagi profesional dan penggemar.

Penuh dengan video proyek

https://www.youtube.com/watch?v=GlTMB9AVAJU



teknik fotografi



fotografi

fotografi, fotografi adalah, komposisi fotografi, teknik fotografi, jenis jenis fotografi, angle fotografi, contoh fotografi

#Cara #membangun #sistem #penumpukan #fokus #beragampengetahuan #sederhana

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *