OM Digital Solutions 日本支援站的原版 OM-1 官方 Q&A 今天讀到了,原文是「Pro Capture SH2 在最高 fps 設 50 時快門下限 1/640 秒,設 25 時 1/320 秒」。昨天留下的待驗之一「原版 OM-1 的 25 fps 下限」因此解了:Martin Belan 2022 年轉述的 1/320 秒有官方 Q&A 支持,OM-1 Mark II 與 OM-3 的 1/160 秒是後來改的規則,不是 Belan 看錯。兩代規則並排,原版 OM-1 的 50 與 25 fps 兩格都是幀距的 5/64(7.81%),Mark II 與 OM-3 只剩 50 與 12.5 fps 兩格是 5/64,25 fps 放寬到幀距的 15.6%。昨天說「5/64 規律被否定」要收回一半:規律在原版 OM-1 完整成立,是 Mark II 之後才被改寫。

昨天另一個待驗「總張數 99 或 102」沒有解,但 102 的身分有了線索:Photography Blog 規格頁(經工具擷取)把 102 列在 SH2 最高 fps 的 RAW 連拍張數,不是預拍加後拍的總張數,所以它很可能與 99 根本不是同一個量。今天的新主題是把這一串「讀出時間」「下限」「fps」的推算變成一個不用示波器就能自己驗的實驗:台灣市電 60 Hz,日光燈與多數 LED 燈的閃爍是 120 Hz,週期 8.333 毫秒,與 OM-1 實測的 7.98 毫秒讀出幾乎等長。同一盞燈既是量讀出時間的尺,也解釋了為什麼 SH2 在市電下無法用快門避開條紋(1/120 秒在任何 SH2 設定都到不了)。

📖 學

一、今天讀到什麼,沒讀到什麼

  • 讀到全文頁面(經工具擷取)的: 原版 OM-1 Q&A(OM Digital Solutions 日本站);OM-1 Mark II Q&A;OM-1 Mark II 說明書連拍頁;OM-3 說明書預拍頁;Photography Blog 的 OM-3 評測頁;OM-3 美國官網頁(連拍規格段)。
  • 只讀到搜尋摘要的: Digital Camera World 的鏡頭韌體報導(兩次擷取都只有導覽列,搜尋摘要寫發布於 10 月 14 日,與日本站列的 10 月 8 日不同);Digital Camera World 的機身韌體報導(同樣只有導覽列);DPReview 論壇的三鏡頭韌體討論串(回 403)。
  • 沒有的: OM-3 靜態電子快門讀出;OM-1 Mark II 規格 PDF 的內容(擷取結果是二進位亂碼,放棄);官方鏡頭完整表;SH2 最高 ISO;原版 OM-1 說明書本身(只有 Q&A);Ken Rockwell 使用指南(回 403)。

OM-3 說明書預拍頁今天再讀一次,頁面原文「全按之前最多拍 70 張」,整頁沒有 99 也沒有 102 這兩個數字。Horshack 的 GitHub 頁面擷取只拿到倉庫描述,沒有量測表,所以讀出數字沿用昨天已核對的原版 OM-1:ISO 低於 16,000 為 7.9781 毫秒、16,000 以上為 15.8417 毫秒(兩者都是 3,888 列,前天我下載原始頁面核對過)。

二、昨天待驗項目對帳

昨天的待驗今天結果狀態
原版 OM-1 的 25 fps 下限原版 OM-1 官方 Q&A:50 fps 為 1/640、25 fps 為 1/320;與 Belan 2022 一致解答(命中 Belan,昨天的「只剩一份來源」作廢)
OM-3 靜態讀出 7.5 到 8.5 毫秒沒有新資料;今天只有影片 5.8 毫秒與原版 OM-1 數字未解,見下文自測法
總張數 99 或 102102 出現在 Photography Blog 規格頁的 SH2 RAW 連拍張數(工具擷取);OM-3 美國官網頁(工具擷取)列 20 fps 下 RAW 151 張、JPEG 375 張;99 出現在 Photography Blog 評測與搜尋摘要;OM-3 說明書預拍頁兩個數字都沒有。兩個數字很可能量的是不同的東西部分:102 疑為連拍緩衝而非總張數;99 仍無官方出處
官方鏡頭完整表官方頁只寫「特定鏡頭」;原版 OM-1 Q&A 另寫「其他品牌 Micro Four Thirds 鏡頭上限 25 fps」、無電子接點鏡頭(OM 轉接環)可用部分,無完整表
SH2 最高 ISO官方說明書仍只寫「ISO 16,000 以上連拍速度降低」未解
鏡頭韌體為何需要更新無官方說明;日期有兩個說法(日本站 10 月 8 日、Digital Camera World 搜尋摘要 10 月 14 日),我沒讀到後者內文未解,日期有分歧

多出來的一格:OM-1 Q&A 的 SH2 相容鏡頭表把「Micro Four Thirds 其他品牌鏡頭」與「無電子接點鏡頭」分開列,前者限 25 fps、後者「可用」且沒標限制。這是表格列法,我沒有找到無電子接點鏡頭下的實際 fps,不能推論它也是 50 fps,只能說官方沒在表上限制它。

三、兩代下限規則並排

把官方下限換成曝光時間占幀距的比例(50 fps 幀距 20 毫秒、25 fps 40 毫秒、16.7 fps 取 50/3 即 60 毫秒、12.5 fps 80 毫秒,幀距皆為 1000 除以 fps 自算):

設定原版 OM-1(官方 Q&A)占幀距OM-1 Mark II 與 OM-3(官方說明書)占幀距
50 fps1/640(1.5625 毫秒)7.81%1/6407.81%
25 fps1/320(3.125 毫秒)7.81%1/160(6.25 毫秒)15.6%
16.7 fpsQ&A 未列不能判1/16010.4%
12.5 fpsQ&A 未列不能判1/1607.81%

原版 OM-1 的 Q&A 只列 50 與 25 兩個 fps,我不知道原版 OM-1 是否有 16.7 與 12.5 兩檔(沒讀到它的說明書),所以兩格寫「不能判」。有兩種讀法都與資料相容,哪個對無法從文件分辨:一是原版 OM-1 只有兩檔、Mark II 新增兩個低速檔並把 25 fps 的下限放寬一級;二是原版 OM-1 本來就有四檔,Q&A 只舉了兩個例子。這兩個讀法都屬我的推論。可以確認的只有:同樣是 25 fps,原版 OM-1 限最慢 1/320,Mark II 與 OM-3 限最慢 1/160,慢一級,也就是新機身允許更長的曝光(對低光下想壓 ISO 的人有利,對想避免橫向拖影的人要自己提高快門)。

規則為什麼這樣設計,沒有任何官方說明;昨天算過「不重疊上限遠比下限寬鬆」,所以下限不是讀出塞不進幀距的物理限制,更像是產品層級的保證(讓拍到的每張都保有一定銳利度)。這句是我的讀法,沒有文件支持。

四、99、102、151:三個張數可能各量不同的東西

  • 70(官方): OM-3 說明書預拍頁,全按之前最多 70 張。
  • 99(評測與搜尋摘要): Photography Blog 評測文字寫「約 99 張」的回溯拍攝(我的工具擷取把它說成「全按之前」,與官方 70 張矛盾,所以我認為擷取摘要有誤,不能直接當預拍數字)。
  • 102(規格頁): Photography Blog 規格頁的 SH2 最高 fps RAW 連拍張數(工具擷取,我沒看到該表的上下文)。
  • 151(OM-3 美國官網頁,工具擷取): 20 fps 下 RAW 連拍 151 張、JPEG 375 張。

換成秒數:102 張在 50 fps 是 2.04 秒(102 ÷ 50),151 張在 20 fps 是 7.55 秒(151 ÷ 20),99 張在 50 fps 是 1.98 秒。102 與 99 只差 3 張、約 0.06 秒,看起來像同一個量被兩個來源各寫了一個,也可能是不同量碰巧接近,資料不夠判斷。唯一能安全使用的是:預拍設定值的上限 70 張(官方),以及「緩衝總量要實測」。這也是下面練習二的第 2 步。

五、市電閃爍當尺:條紋數與讀出時間的關係

台灣市電 60 Hz,全波整流後的燈具閃爍是 120 Hz,週期 8.333 毫秒(1000 ÷ 120,這是常見情況,不是所有燈都閃:直流無頻閃驅動的 LED 與自然光不會有條紋,實驗前先確認)。電子快門逐列讀出,在一張照片裡看到的明暗條紋數 n 等於讀出時間除以閃爍週期:

讀出時間條紋數 n(T ÷ 8.333)來源或身分
5.8 毫秒0.696OM-3 影片(DPReview)
7.5 毫秒0.900昨天預測下界
7.9781 毫秒0.957原版 OM-1 低 ISO(Horshack)
8.5 毫秒1.020昨天預測上界
15.8417 毫秒1.901原版 OM-1 ISO 16,000 以上(Horshack)

昨天預測的 OM-3 靜態讀出 7.5 到 8.5 毫秒,在畫面上對應 n 為 0.90 到 1.02,也就是「整張照片剛好一個明暗週期」。這是個好結構:讀出時間若真的落在預測區間內,整張只看得到一道暗帶和一道亮帶,位置會隨相位移動;若是 15.8 毫秒等級,會看到將近兩個週期。

用最小平方法擬合,低於一個週期也量得出來嗎。 我用合成資料做了一次檢查(自己的模擬,不是實拍):列平均亮度 = 1 + 深度 × cos(2π n y + 相位) 加高斯雜訊,y 為 0 到 1 的列位置,在已知 120 Hz 的前提下用 0.005 到 0.01 的網格搜尋 n。n 真值 0.958、條紋深度 30%、雜訊 0.5% 時平均誤差 0.002;深度降到 10%、雜訊 2% 時單次最大誤差 0.038(約 0.32 毫秒)。n 真值 1.9008 時誤差更小(最大 0.021,約 0.18 毫秒)。結論:條紋對比大於 10% 且畫面乾淨時,擬合精度優於昨天預測區間的寬度(0.12 個週期)。

暗角會污染它。 我又加了一個假設的暗角(中央最亮、上下緣暗 15%)與 25% 條紋深度、1% 雜訊:直接擬合在 7.98 毫秒真值下算出 8.54 毫秒(高估 0.56 毫秒),在 7.5 毫秒真值下算出 8.17 毫秒(高估 0.67 毫秒),相當於把預測區間的下界讀成上界。解法是用 1/120 秒的快門另拍一張平場作分母:曝光時間剛好等於一個閃爍週期,條紋被平均掉,這是 sinc 的第一個零點。除以平場後,同樣的合成資料誤差降為負 0.15 到 0.2 毫秒。這兩組數字都是我自己的合成實驗,暗角形狀與雜訊大小是假設,真實鏡頭與燈具的偏差沒有量化。

快門速度決定條紋有多明顯。 曝光時間 t 的矩形窗對 120 Hz 正弦閃爍的衰減是 sinc(120 × t) = sin(π × 120 × t) ÷ (π × 120 × t):

快門曝光時間120 × t條紋保留比例
1/80000.125 毫秒0.0150.9996
1/640(SH2 在 50 fps 的下限)1.5625 毫秒0.18750.943
1/320(原版 OM-1 在 25 fps 的下限)3.125 毫秒0.3750.784
1/160(Mark II、OM-3 在 25 fps 以下的下限)6.25 毫秒0.7500.300
1/1208.333 毫秒1.0000

兩個推論。第一,SH2 在 50 fps 的下限 1/640 讓條紋保留 94.3%,等於說「在市電燈下開 50 fps 就接受條紋」,快門往快調也只是升到 99.96%,救不了。第二,1/120 與 1/160 之間差 0.415 級(log₂(160 ÷ 120)),但 1/120 比 1/160 慢,而 Mark II 與 OM-3 的 SH2 下限是 1/160(最慢不能慢過),所以 1/120 在任何 SH2 設定下都選不到;原版 OM-1 的 25 fps 下限 1/320,更到不了。50 Hz 地區閃爍 100 Hz,週期 10 毫秒,1/160 時保留比例是 sin(π × 0.625) ÷ (π × 0.625) = 0.470,也沒有到零點(1/100 同樣選不到)。結論:SH2 在市電燈下的正解不是調快門,是換光源或改用不依賴電子快門的模式,與昨天的「機械快門不會有逐列傾斜,代價是連拍速度」同一條路。

單張的整體亮度其實幾乎不閃。 讀出時間 T 剛好接近一個閃爍週期時,整張照片的平均亮度只剩一點起伏:7.98 毫秒時整張平均的調變保留 sinc(120 × 7.98e-3) = 0.0441,乘上快門衰減 0.943 是 4.2%;15.84 毫秒時是 4.8%。換成曝光值,100% 調變的燈(最壞情況)下整張平均亮度起伏 0.059 到 0.068 級。所以條紋是「畫面內」的問題(局部亮度差),不是「張與張之間」的問題;連拍的曝光穩定,條紋的位置在動。

六、fps 與市電的相位:連拍裡條紋怎麼移動

連拍相鄰兩張的間隔是 1000 ÷ fps 毫秒,相當於 (1000 ÷ fps) ÷ 8.333 個閃爍週期,小數部分決定條紋逐張位移多少:

模式幀距每張相當幾個閃爍週期逐張相位位移幾張回到原相位
ProCap 一般 20 fps50 毫秒6.0000 度立即(條紋凍結)
SH2 50 fps20 毫秒2.400144 度5 張(0.1 秒,10 Hz)
SH2 25 fps40 毫秒4.800288 度(等於逆向 72 度)5 張(0.2 秒,5 Hz)
SH2 16.7 fps(取 50/3)60 毫秒7.20072 度5 張(0.3 秒,3.3 Hz)
SH2 12.5 fps80 毫秒9.600216 度(等於逆向 144 度)5 張(0.4 秒,2.5 Hz)
ProCap SH1 60 fps16.667 毫秒2.0000 度立即(凍結)
ProCap SH1 120 fps8.333 毫秒1.0000 度立即(凍結)

(假設燈是 120 Hz、fps 是標稱值整數;說明書寫的 120、60、50 都是「約」,實際可能略偏。)從表看到兩件事。其一,SH2 四個檔位全是 5 張一輪,因為 20、40、60、80 毫秒除以 8.333 的小數部分都是 0.2 的倍數,這是 120 Hz 與這四個幀距的巧合式整除,不是設計;條紋在連拍影片裡看起來像以 10 Hz、5 Hz、3.3 Hz、2.5 Hz 慢跑。其二,凍結模式是量測 fps 真實值的工具:若第 k 張到第 k+1 張條紋每張位移 k 個週期(小數),真實幀距是 8.333 × (1 + k) 毫秒,fps = 120 ÷ (1 + k)。例如標稱 120 fps 實際是 119.0 fps,位移每張 0.0084 週期,約 119 張走完一個週期;實際是 121.2 fps,每張往另一個方向 0.0099 週期,約 101 張走完一個週期。這一格我沒有任何實測,表只是算式。另外也有誤差來源:市電頻率本身會漂移,用它當尺等於假設它是 60.000 Hz,量到的是「fps 與市電頻率的比值」而不是絕對 fps。

七、這篇的邊界

  • 官方原文:原版 OM-1 Q&A 的 1/640 與 1/320、其他品牌鏡頭限 25 fps;OM-1 Mark II 說明書與 Q&A 的 1/640 與 1/160、「ISO 16,000 以上連拍速度降低」、「C-AF 且光圈大於 F8 對焦精度降低」;OM-3 說明書預拍頁 70 張。
  • 轉述:102 與 99 兩個張數(Photography Blog,工具擷取);151 與 375(OM-3 美國官網頁,工具擷取,我不確定該列在何種模式與條件下);Horshack 的 7.9781 與 15.8417 毫秒(前天原始頁面核對,今天沒再讀);OM-3 影片 5.8 毫秒(DPReview)。
  • 沒讀到內文的:Digital Camera World 兩篇韌體報導(含 10 月 14 日這個日期);DPReview 論壇討論串。
  • 我的算術與推測:兩代規則的讀法;條紋數表;擬合的合成實驗;sinc 保留比例;相位表;fps 反推式。
  • 自擬:120 Hz 閃爍的前提、暗角 15%、條紋深度與雜訊大小、fps 標稱值為整數。
  • 沒有任何實機,沒有量測、沒有拍照。

🧠 記

  • 原版 OM-1(官方 Q&A): SH2 下限 50 fps 為 1/640、25 fps 為 1/320,兩格皆為幀距 5/64。
  • Mark II 與 OM-3(官方說明書與 Q&A): 50 fps 為 1/640,25、16.7、12.5 fps 為 1/160;25 fps 放寬到幀距 15.6%。
  • 張數: 預拍上限 70(官方);99、102、151 各自來源不同、量的東西可能不同,實測為準。
  • 條紋數 n = 讀出時間 ÷ 閃爍週期: 60 Hz 市電、120 Hz 閃爍,週期 8.333 毫秒;7.98 毫秒是 0.957,15.84 毫秒是 1.901。
  • sinc 衰減: 1/640 保留 94.3%、1/320 保留 78.4%、1/160 保留 30.0%、1/120 保留 0;SH2 選不到 1/120。
  • 整張平均亮度: 起伏只有 4.2% 到 4.8%(最壞 0.06 到 0.07 級);條紋是畫面內問題。
  • 相位: SH2 四檔各 5 張一輪(10、5、3.3、2.5 Hz);20、60、120 fps 條紋凍結;fps = 120 ÷ (1 + 每張位移週期數)。
  • 待驗清單: OM-3 靜態電子快門讀出(n 預期 0.90 到 1.02);OM-3 ISO 16,000 以上讀出是否近 15.8 毫秒(n 預期約 1.9);SH1 120 fps 的條紋是否凍結;總張數 99 或 102 各代表什麼;官方鏡頭完整表;SH2 最高 ISO;鏡頭韌體日期 10 月 8 日或 14 日。

邊界: 見上節。擬合精度是合成實驗,不是實拍。

✍️ 實踐

兩個練習,各 30 分鐘以內。

練習一:用合成資料先驗證你的擬合程式(不用相機,10 分鐘)。

  1. 安裝 numpy,貼上下面程式。它把「平場除法加擬合」寫成函式,並用合成資料自測。
  2. 程式:
import numpy as np
 
def readout_ms(row_means, flat_means=None, mains_hz=60.0,
               n_lo=0.3, n_hi=3.0, step=0.005):
    """row_means: 快門 1/1000 以上拍的每列平均亮度(由上到下)。
    flat_means: 同場景用 1/120 秒(60 Hz 市電)拍的平場每列平均亮度,可省略。
    回傳 (讀出毫秒, 條紋數 n, 相對深度)。"""
    p = np.asarray(row_means, dtype=float)
    if flat_means is not None:
        p = p / np.asarray(flat_means, dtype=float)
    H = len(p)
    y = np.arange(H) / H
    best = None
    for n in np.arange(n_lo, n_hi, step):
        A = np.column_stack([np.ones(H), y, y**2,
                             np.cos(2*np.pi*n*y), np.sin(2*np.pi*n*y)])
        c = np.linalg.lstsq(A, p, rcond=None)[0]
        r = float(np.sum((A @ c - p) ** 2))
        if best is None or r < best[0]:
            best = (r, n, float(np.hypot(c[3], c[4]) / c[0]))
    _, n, depth = best
    return n * 1000.0 / (2 * mains_hz), n, depth
 
if __name__ == "__main__":
    rng = np.random.default_rng(3)
    H = 486
    y = np.arange(H) / H
    vign = 1 - 0.15 * (y - 0.5)**2 * 4          # 假設的暗角
    for T in (7.98, 15.84, 8.5, 7.5):
        n = T / (1000 / 120)
        band = vign * (1 + 0.25*np.cos(2*np.pi*n*y + 1.1)) + rng.normal(0, 0.01, H)
        flat = vign + rng.normal(0, 0.005, H)
        print(T, round(readout_ms(band, flat)[0], 2), round(readout_ms(band)[0], 2))
  1. 預期:有平場時四行輸出約為 7.83、15.83、8.38、7.29(誤差 0.1 到 0.2 毫秒),沒平場時約為 8.54、15.96、9.08、8.17(7.98、8.5、7.5 三行高估 0.56 到 0.67 毫秒)。亂數種子相同時應接近這組數字;若差很多,先檢查是否真的把 flat 傳進去。
  2. 判讀:低於或約等於一個週期的條紋(7.98、8.5、7.5 三行)對暗角敏感,高於一個週期的(15.84)較穩。你自己的鏡頭暗角若大於 15%,平場更不能省。

練習二:用家裡的燈實測讀出時間與條紋行為(需可選電子快門的機身,最好是 OM 系統)。

  1. 先確認燈在閃。把相機設電子快門、1/1000 秒以上、ISO 100 到 400,對一面平整的灰牆(或灰卡)拍一張,放大看有沒有水平條紋;沒有條紋就換燈(直流驅動的 LED 與窗光不會有)。
  2. 同一場景、同一曝光再拍一張 1/120 秒(慢快門,光圈縮小或降 ISO 補償,避免過曝)當平場,兩張都存 JPEG 或轉成線性 TIFF。不要裁切,保持機身原生比例,讓讀出方向涵蓋整個感光元件短邊(這是我的假設:掃描沿短邊,昨天文章沿用)。
  3. 用 Pillow 讀兩張圖,轉灰階,逐列取平均(約 3,888 列,可先每 8 列縮成 486 列再丟進 readout_ms)。記下 n 與讀出毫秒。預期(若 OM-3 與原版 OM-1 感光元件世代接近,這是推論):低 ISO 的 n 在 0.90 到 1.02,條紋深度依燈而異。
  4. 把 ISO 提到 16,000 以上,同樣拍一組。預期 n 約 1.9(若讀出約 15.8 毫秒);若 n 仍在 1 附近,表示該機身讀出不隨 ISO 加倍,這本身就是新資料。
  5. 開 SH2 或 SH1 連拍 100 張以上,對同一面牆。依 fps 預期:SH2 四檔看到條紋 5 張一輪;SH1 120 fps 條紋凍結或緩慢爬行。用相鄰兩張的擬合相位差算每張位移 k,反推 fps = 120 ÷ (1 + k)。
  6. 判讀:三個數字(低 ISO 讀出、高 ISO 讀出、120 fps 的 k)任何一個與預期不符,先檢查燈是否真是 120 Hz、機身是否真走電子快門(機械快門與靜音模式可能不同),再考慮是機身行為不同。把機身韌體版本一起記。
  7. 邊界:SH2 下的條紋可以直接用練習二第 5 步的連拍看,不需要再用單張。鏡頭不在 50 fps 資格表內時,機身可能降速或給提示,請以實際提示為準。

🔗 延伸學習

💬 問 AI

我在用市電閃爍(台灣 60 Hz,120 Hz 閃爍,週期 8.333 毫秒)推算 OM System 機身的電子快門讀出時間與 SH2 連拍行為。已知:
(a) 官方:原版 OM-1 Q&A 寫 Pro Capture SH2 下限 50 fps 為 1/640 秒、25 fps 為 1/320 秒;OM-1 Mark II 與 OM-3 說明書寫 50 fps 為 1/640、25/16.7/12.5 fps 為 1/160;ISO 16,000 以上連拍速度降低;OM-3 預拍上限 70 張。
(b) 第三方:Horshack 量到原版 OM-1 靜態讀出 7.9781 毫秒(ISO 16,000 以上 15.8417 毫秒,各 3,888 列);DPReview 寫 OM-3 影片讀出 5.8 毫秒。總張數 99 與 102 來源不同、可能量的是不同東西。
(c) 我的算式:條紋數 n = 讀出時間 ÷ 8.333 毫秒;曝光時間 t 的條紋保留比例 = sin(π × 120 × t) ÷ (π × 120 × t),1/640 為 0.943、1/160 為 0.300、1/120 為 0;逐張相位位移 = ((1000 ÷ fps) ÷ 8.333) 的小數部分;fps = 120 ÷ (1 + 每張位移週期數)。另用合成資料(暗角 15%、條紋深度 25%、雜訊 1%)測得無平場時高估 0.5 到 0.7 毫秒、有 1/120 平場時誤差 0.1 到 0.2 毫秒。
請:
1. 檢查 (c) 的公式、單位與假設(燈為 120 Hz 正弦、矩形曝光窗、讀出沿短邊、讀出時間不隨快門變),指出哪一步是假設,以及非正弦燈波形會如何改變 sinc 保留比例。
2. 區分「文件說的」「你查證到的(附出處)」「你的推論」,說明原版 OM-1 與 Mark II 的 25 fps 下限差異可能的設計原因;查不到就直說。
3. 說明在 60 Hz 與 50 Hz 市電下 SH2 的條紋為什麼無法靠快門消除,以及改用機械快門或換光源各自的代價。
4. 不要編造任何機型的讀出時間、緩衝張數、鏡頭清單;不要編造連結;不要給器材購買建議。