-
No tak ale temat o CKDK juz jest na forum i ma się dobrze
-
-
Coś już napisał
Intervalometer
napisałem taki skrypcik (1 raz w sumie)
może da się go uprościć jeszcze,może ma błędy jakieś ale wydaje się ,że działa
możemy ustawić :
-czas startu robienia fotek
w min,10sek i sek
-ilość fotek
-czas pomiędzy fotkami
w min,10sek,sek
odliczane czasy są pokazywane w 1 linii
skrypt:
@title My Intervalometer
@param a Start 1st Shot (Mins)
@default a 0
@param b Start 1st Shot (10th Secs)
@default b 1
@param c Start 1st Shot (Secs)
@default c 0
@param d Number of Shots
@default d 1
@param e Interval (Minutes)
@default e 0
@param f Interval (10th Seconds)
@default f 1
@param g Interval (Seconds)
@default g 0
if a<0 then a=0
if b<0 then b=0
if c<0 then c=0
if d<0 then d=1
if e<0 then e=0
if f<0 then f=0
if g<0 then g=0
if d=1 then z=0
z=(e*60)+f*10+g
n=(a*60)+b*10+c
if n>0 then gosub "time"
for p=1 to d
print "Shot", p, "of", d
shoot
if p=d then goto "end"
sleep z
if z>0 then gosub "interval"
next p
end
:interval
for r=1 to z
x=z-r
if z>0 then print "Interval:", x/60; "min", x%60+1; "sec"
sleep 1000
cls
next r
return
:time
for m=0 to n
q=n-m
if q>0 then print "To start:", q/60; "min", q%60; "sec"
sleep 1000
cls
next m
return
:end
end
zapisujemy go z rozszerzeniem *.bas np
My_timer.bas i wgrywamy do katalogu CHDK/SCRIPTS na naszej karcie pamięci
-
Coś już napisał
Motion-detection Parameters
pojawił się na Wiki w końcu jakiś ciut większy opis parametrów do skryptu:
md_detect_motion a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p
md_get_cell_diff (column), (row), x
Referring to the 'md_detect_motion' command-parameters in the WIKI article, 'a' and 'b' define the number of rows and columns to split the screen into. (If values less than zero are entered or if total number of cells is greater than 1024, it defaults to 3 x 3.)
Parameter 'g' determines if the a grid showing the detected cells is displayed.
Parameters 'j,k,l,m' define a sub-area of the screen where motion-detection is restricted-to or excluded-from.
Parameter 'i' determines if the region is inclusion/exclusion or do not use regions.
You may detect motion based on changes of luminance (Y), blue – luminance (U), red – luminance (V) or individual R, G or B values.
Parameter 'c' sets that mode.
( For an example of an image split into it's YUV components, see this WIKI article. )
For non-specialised use, luminance (c = 1) will be used.
You then need to set a threshold-value (in parameter 'f') for the desired mode that will not result in triggering in 'normal' operation.
The motion-detection event may be triggered by quick or slow changes in the screen image, set a suitable value with parameter 'e'.
The greatest accuracy of movement-detection results when every pixel is sampled but a faster response (suitable for some applications) may be obtained with a larger pixel-step.
Set an appropriate value in parameter 'o'.
Set a maximum-time for a motion-detection event to occur with parameter 'd' so that after that time the script-command terminates.
Motion-detection Parameters :
columns, // input parameter. number of columns to split screen into
rows, // input parameter. number of rows to split screen into
pixel_measure_mode, // input parameter. // 1 - for Y, // 2 for U, // 3 for V, // 4 for gray, // 5 for R, - // 6 for G, // 7 for B
detection_timeout, // input parameter. number of millisecnds to abort detection. detected_cells_count will be 0 for timeout condition
measure_interval, // input parameter. number of milliseconds between comparison of two pictures
threshold, // input parameter. difference value for which procedure will trigger detection of changes draw_grid, // boolean input parameter. // true(1) to draw grid(detected sectors/cells). // false(0) - to not display grid/detected sectors
detected_cells_count, // output parameter. count of cells where pixel values differs enough to trigger motion detection // clipping. allows to exclude some region from mtion detection triggering // or use onli selected area to make motion detection // I'm not sure that following parameters are required but using them anyway
clipping_region_mode, // input parameter. // 0 no clipping regions // 1 - for excluding selected region from motion detection // 2 - use this only region to make motion detection clipping_region_column1, // input parameter. clipping_region_row1, // input parameter. // this is top-left corner of clipping region
clipping_region_column2, // input parameter. clipping_region_row2, // input parameter. // this is right bottom corner of clipping region)
function md_get_cell_diff ( col [in], // column of the cell we are requesting row [in], // row of the cell we are requesting val [out] // value of difference between measurements/comparisons)
reserved parameters clipping regions, pixel_measure_mode draw_grid
-
Coś już napisał
Motion Detection - wykrywanie ruchu
oryginalny skrypt działa u mnie tak ,że jak wykryje ruch strzela fotki na okrągło
przerobiłem go tak ,że można w nim definiować ile ma zrobić fotek (post w wątku)
potem zacząłem kombinować jak zrobić , żeby
jeśli wykryje ruch-robił fotkę a potem przechodził znów w tryb wykrywania
nie mogłem sobie z tym dać rady aż w końcu znalazłem podobnie działający skrypt i lekko go przerobiłem
wygląda tak:
@title motion_no_loop
@param a Columns
@default a 2
@param b Rows
@default b 2
@param c Threshold (0-255)
@default c 10
@param d compare Interval (millisecs)
@default d 80
@param e Begin Triggering Delay(secs)
@default e 0
@param f Detect Timeout (seconds)
@default f 0
@param g pix step(speed/accuracy adj)
@default g 8
@param h reg mode(0-no,1-incl,2-excl)
@default h 0
@param i 1Y,U0,V2,4gray, 5R, 6G, 7B
@default i 1
if a<1 then let a=1
if b<1 then let b=1
if c<0 then let c=0
if g<1 then let g=1
if f<1 then let f=1
let f=f*1000
let e=e*1000
:loop
let t=0
md_detect_motion a, b, i, f, d, c, 1, t, h, 2, 2, a-1, b-1, 0, g, e
if t = 0 then goto "loop"
shoot
goto "loop"
if t<1 then goto "1"
shoot
:1
end
-
Początki nałogu
Coś nie działa ten skrypt. "Tradycyjnie" po wykryciu ruchu, strzela fotki bez opamiętania.
-
Coś już napisał
hmmm
spróbuj ustawić inaczej parametry i zrobić go mniej czułym
-
Początki nałogu
Regulacja czułością niewiele daje, wszystko jest bardzo przypadkowe. Raz wyzwoli się jeden strzał, raz 2, a najczęściej strzela bez końca.
A jak Ty masz ustawione, że u Ciebie działa. Aparat mam ten sam.
-
Coś już napisał
columns 10
rows 10
threshold 10
compare 80
begin 0
detect 0
pix 8
reg 0
1Y 1
i działa mi bardzo dobrze-dokładnie jak chciałem-też to zapętlanie mnie wkurzało
-
Początki nałogu
NIc z tego. zapętla dalej. Próbuję w różnych trybach, z wyłączoną i włączoną stabilizacją. Nie wiem, czemu u Ciebie działa, a u mnie przy tych samych ustawieniach nie.
-
Coś już napisał
EV bracketing skrypt
uczę się pisać te skrypty i napisałem sobie skrypt do bracketingu coby robił taką samą ilość zdjęć w + i -
definjujemy mu
-zakres od 1/3 Ev do 2EV
-krok od 1/3EV do 2EV
-ilośc zdjęć w 1 kroku
dowolna
jeżeli nie będzie możliwa zachowana symetria (czyli jak nie da się takiej samej ilości zdjęć wykonać z kompensacją w minus jak i w plus) wyświetli błąd
skrypt można przerobić na szybszy ale jeszcze nie rozgryzłem jak definiować mu kompensację ekspozycji przez użycie set_prop i get_prop
Co dziwne po kilkukrotnym wykonaniu skryptu nie wychodząc z trybu ALT po skończeniu zdjęć nie resetuje ekspozycji do zera a czasem skacze przy starcie w + -strasznie to dziwne -pytałem na forum zagranicznym ale bez odpowiedzi
@title symmetry EV Braketing
@param a Range EV (a/3 EV)
@default a 1
@param b Step size (b/3 EV)
@default b 1
@param c Shots in 1 (b/3EV ) step
@default c 1
if a<1 then let a=1
if b<1 then let b=1
if c<1 then let c=1
if a=1 and b=1 then d=2b
if b>a then goto "end2"
if a=2 and b=1 then d=4b
if a=2 and b=2 then d=b
if a=3 and b=1 then d=6b
if a=3 and b=2 then d=3b
if a=3 and b=3 then d=2b
if a=4 and b=1 then d=8b
if a=4 and b=2 then d=4b
if a=4 and b=3 then goto "end2"
if a=4 and b=4 then d=2b
if a=5 and b=1 then d=10b
if a=5 and b=2 then d=5b
if a=5 and b=3 then goto "end2"
if a=5 and b=4 then goto "end2"
if a=5 and b=5 then d=2b
if a=6 and b=1 then d=12b
if a=6 and b=2 then d=6b
if a=6 and b=3 then d=4b
if a=6 and b=4 then d=3b
if a=6 and b=5 then goto "end2"
if a=6 and b=6 then d=2b
print "Total Shots",(d+1)*c
if c>1 then print "Make",c,"Shots in 1 Step"
click "erase"
for n=1 to a
click "left"
next n
for s=1 to d
for r=1 to c
shoot
next r
for n=1 to b
click "right"
next n
next s
for r=1 to c
shoot
next r
:end
print "Reset exposure to 0"
for n=1 to a
click "left"
click "erase"
next n
end
:end2
print "Error, check parameters"
end
Uprawnienia umieszczania postów
- Nie możesz zakładać nowych tematów
- Nie możesz pisać wiadomości
- Nie możesz dodawać załączników
- Nie możesz edytować swoich postów
-
Zasady na forum