GENERAL COMPUTER PROGRAMMING INSTRUCTIONS FOR THE(Sanitized) H-229 PHOTO RECTIFIER

Document Type: 
Document Number (FOIA) /ESDN (CREST): 
CIA-RDP78B04747A000600080017-0
Release Decision: 
RIPPUB
Original Classification: 
K
Document Page Count: 
34
Document Creation Date: 
December 28, 2016
Document Release Date: 
February 8, 2002
Sequence Number: 
17
Case Number: 
Publication Date: 
July 23, 1962
Content Type: 
REPORT
File: 
AttachmentSize
PDF icon CIA-RDP78B04747A000600080017-0.pdf842.25 KB
Body: 
Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Research Report RR-22 STATINTL GENERAL COMPUTER PROGRAMMING INSTRUCTIONS FOR THE 229 PHOTO RECTIFIER Revised: 23 July 1962 Declass Review by NIMA/DOD Prepared by. STATINTL Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 H229 PROGRAM PREPARATION CONTENTS 1 - Introduction 1.1 General 1.2 Scanning Method 1.3 Image Transformations 2 - Rectifier Set Up 2. 1 Film Annotation and Alignment 2. 2 Machine Coordinate Systems 2. 3 Punched Tape Program 3 - Computation 3.1 General 3. 2 Preliminary Calculation and Subroutines 3. 3 Computation Sequence 3.4 Sample Programs 4 - Appendix 4. 1 Symbols Used Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Figure 1. 1 H229 Functional Block Diagram Figure 1. 2 Scanning Method Figure 2. 1 Film Annotation Figure 2. 2 Machine Coordinates Figure 2. 3 Data Block - Tape Figure 2.4 Check Block - Tape Figure 3. 1 Computer Flow Sketch Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 TECHNICAL MANUAL - H229 PROGRAM PREPARATION 1.0 Introduction 1.1 General STATINTL This document contains programming instructions for the H229 Photo Rectifier. Programming a rectification includes STATINTL computation of set-up data and punching the program tape. This discussion is intended for the H229 equipment operator as well as computing personnel. H229 Photo Rectifier (frontispiece) is a photo- graphic printer that exposes the print in a sequence of line and strip scans. Variation of the image reading pattern with respect to the printing pattern permits geometrical changes in the image. The control and electro-optical systems are the basic and unique function in this I photographic printer. Figure 1. 1 is a block diagram illustrating equip- ment functions in the rectification of a panoramic photograph. Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600-080017-0 UNIVERSAL PHOTO iPECT/F/ER ,4N0 PR/LATER SWEEP AT TENUATOR D XR TRANSDUCER YR DIRECTION AR NEGATIVE PHOTO MULTIPLIER11 VIDEO AMPLIFIER LENS YP DIRECTION , PRINT ATTENUATOR LENS L~~4m YR INDEX MOTOR R TRANSDUCER L //'~ SYNCHRONIZED 0/--MOTOR Y R INDEX SERVO X R SERVO AMPLIFIER SWEEP GENERATOR P TRANSDUCER Xp DIRECTION Yp INDEX MOTOR SWEEP ATTENUATOR COMPARATOR 1XR COMPUTER TAPE READER Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Figure 1-1 . Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 1.2 Scanning Method The H229 method of oblique rectification by scanning is illustrated in Figure 1. 2. The print is exposed in a pattern of contiguous line and strip scans. The rates and amplitudes of all printing scans are constant to insure uniform print exposure. Reading scan rates, amplitudes, and orientations are programmed in a pattern to produce the desired geometry in the uniformly printed image. Two coordinate systems are shown in Figure 1. 2. The natural coordinates (xr, yro xp, Yp) are formed by the principal point of each image (as the origins) and the principal lines (as the y axes). The machine coordinates (Xr, Yr, Xp, Yp) are displaced from the natural coordinates and are related to them by a scale factor. The printing scan constants can be summarized as follows: Xpo - Scan starting position 'L~ Yp s ~Yp - line scan length or strip centerline separation fsW - line scan frequency (same for reading and printing) K - Strip scan velocity p X - Check interval The last constant ~Xp is the spacing between raster scan check positions (Xpl, Xp2, Xp3, etc. ). These check positions are employed by the H229 Photo Rectifier control system to improve image placement Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 ,LXr Xr [-,*-I , ?,r- ~,, Principal line Xp L Yp - I ri Principal Line ' I I it ?- OBLIQUE NEGATIVE I! I i ~ I 7 8 9 Y-0 n-check point number Approved For Release 2002/06/17: CII A-RDLP78B04747A000600080017-0 gure Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 1.2 Scanning Method (continued) The reading scan variables to be programmed for a desired image transformation are: Xr - starting and check positions Ayr ~y r - Y component of line scan (also strip width) A Xr - X component of line scan interval between successive strip centerlines - strip scan velocity QX r Reading scan parameters must be precomputed and punched in a proper sequence on the operating tape. Synchronization with print- ing scans and some computation are done in the H229 Photo Rectifier. 1. 3 Image Transformations Tape computation requires preliminary knowledge of the analytical transformation between coordinates of,.the original negative and the desired print. Using the natural image coordinates (Xr,Yr, Xp, Yp - see Figure 1. Z) the relation between original and rectified images are expressed in equations 1. 1 through 1.4. Oblique Rectification 1 xr:xp . m - sec t+yp Sint Yr ^ Yp/m sect! +yp sint m Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 1. 3 Image Transformations (continued) Panoramic Rectification 1 1+ yp}2 mf1 = f tan-1 Parameters in the above equations that must be known or determined are: f - camera focal length m - isopoint enlargement ratio required t - tilt angle The above equations will describe most photographic rectifi- cations likely to be made with this equipment. Lin general, the equip- went will perform any image transformation that can be expressed by equations 1. 5 and 1. 6. xr = xp ? F1 (YP) 1.5 Yr = F2 (YP) Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 2. 0 Rectifier Set-Up and Program Information 2. 1 Film Annotation and Alignment Rectification accuracy depends upon correct alignment of a properly annotated negative in the H229 reading platen and precise knowledge of the analytical image transformation. Fiducial marks on the, reading platen must be aligned with the principal line of the photograph and its perpendicular at the edge. Figure 2. 1 shows four markings xequired on the original negative; to properly align the Yr axis and the starting position Yr ^ -b + 5" on the platen. Two[ measurements are required (distance b and k). Dimension b in Figure 2. 1 is the distance from the center of the first strip scan (Yr = -b) to the principal point yr = 0. The starting position is the low oblique edge of an oblique photograph or as high as 65? from vertical on a panoramic photograph. Dimension k is the approximate distance of principal point to the last strip scan center- line. Information required to generate the proper rectifying program tape is 1. Type of photography (panoramic, oblique, other) 2. f - Camera Focal Length (+ 0.001 inch) 3. m - Isopoint Enlargement Ratio ( + 0. 001) 1 4. t - Tilt angle (,j 0.01?) 5. b - (see figure 2. 1) (? 0. 001 inch) 6. k - (see figure 2. 1) Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2192/06/17: CIA-RDP78BO4747A000600080017-0 4 3) 0 _. L J3 Approved For Release @002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 2. 1 Film Annotation and Alignment (continued) The tolerances indicated are those which will be practical within the theoretical limitations of the photo rectifier if the accuracy of measure- 2. 2 Photo Rectifier Machine Coordinate System The numerical control system used in the H229 equipment requires that all the X and Y positions on the original negative (or print) are represented by positive numbers. This requires that the origin of machine coordinates be displaced from the principal point (used as the origin for expressing the image transformation - see equations 1. 1 to 1. 6). Furthermore, X displacements of the image are made by lens rather than film motion. This introduces a scale factor between coor- dinates. The relation between film and machine coordinates is expressed by equations 2. 1 and 2. 4. Xr = ?xr + a Yr= Yr + b Np = 1 (Xp -c) yp = Yp -d where 2,5 (exact ratio) 28 a 5. 5 c = 5. 5 b - from annotation (see paragraph 2. 1 ) d - calculation from b Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Photo Rectifier Machine Coordinate System (continued) The X and Y positions in the rectifier are numerically encoded for negative and print. The negative film scan motion is sychronized with the uniform printing scans by continuous compu- tation (in the H229) of relative scan positions and by slaving reading scans to computed positions and rates. Figure 2. 2 shows reading and printing platens with dots representing center points of selected line scans performing a specific image transforrra tion. Starting at scan position Yp = 0 (s = 0), a strip is scanned in the + XP direction. The first line scan, made at XP =0 (n = 1) is followed by a set of line scans sweeping a strip. The starting reading scan (Xr = 0, Yrs) is read from the punched tape at printer position (Xp = 0, Yps). Subsequent reading scan positions are continu- ously computed in the Photo Rectifier. For increased accuracy, the reading scan position is checked by the machine using precomputed tape data at intervals SXp = 1/2 inch. Using scan and check point numbers, the values of Xp and Yp expressed in inches, are given by equations 2. 5 and Xpn = (n - 1) 3 Xp Ypn= s 8Yp 2. 6. From equations 2. 3 and 2. 4 printed image positions referred to the principal point are Xpn Ypn _ [(n - 1) ($Xp - c)] 2.7 gyp - d 2. 8 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 { Ln -D 00 Q 11 e =, AApprovec$F.ar2Release 20D2/06M-4: rIA-F,DIi-a,78 04~4~A000600080017-0 w XR YR 8 3 5-0 a = I XP READING PLATEN i PRINTING PLATEN Approved For Release 2002Iq / j LCI,~.- DP78B04747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 2. 2 Photo Rectifier Machine Coordinate System (continued) The value interval SXp is always 0.5000 inch. The value of SYp will be 0. 5000 inch or less. The exact value of SYp is determined by setting thelaagest value of &Yr equal to 0.5000 inch if it exceeds $Y p, The H229 Photo Rectifier employs check points from (n = 1 to n = 21). The number of scans S depends upon the length of the rectified image. 2. 3 Punched Tape Program Numerical Data required to program each reader scan in synchronism with the corresponding printing scan is given below: a. SYrs - interval between the centerline of the (s - 1)th reading scan and the Sth scan. b. p Yrs - Y component of reading line scans in the Sth strip scan. AXrs - X component of any reading line scan (in the Xrs Sth strip) divided by the displacement of its ctrnter point from the principal line..... This constant for each reading strip scan is used to compute the value L Xrs in real time d. Kp/c - ratio of printing and reading strip scan r velocities. e. Xrs, n - instantaneous Xr position of line scan centers used for check points. Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 2. 3 Punched Tape Program (continued) Five On-Off commands are also required from punched tape. These are Register, Start Scan, Stop Scan, Stop Program, and Sweep Aspect. Punched tape is read in the H229 Tape Reader in blocks of 5 x 10 hole positions. Each strip scan requires 22 tape blocks. Tape block n = 0 contains all numerical constants for the scan. Tape blocks n = 1 through 21 contain data for checking scan positions in 1/2 inch printing scan intervals. The number n referes to the check point (figure 1. 2) and also the tape block containing the numerical reading check point position. Since each scan requires 22 tape blocks (n = 0 through 21) the total number of 5 x 10 hole position blocks in the program tape is 22 x (s + 1) where s varies from 0 to S. Numerical information in each Data Block (that is where n = p) is shown in Figure 2.3. SYr is expressed by four decimal digits; Yr LXr by an eleven bit binary number; and by a?riifiie bit binary number. xr In Figure 2.4 Xr is expressed as a seventeen bit binary 0 number and Xp/o as a fourteen bit binary number. Xr 1z Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 3 ID 10 Sprocket Holes A B C if Z~) 1r I S 1r S 1r i S~r Cdr 16r Sir' /-Y-(r 1 b r E`(r W r r ~d7rr I Xf R /_~ xY-16Yr MSD ^Xr Xr r.~r Mr * Position never used R - Register Command S. A. -Sweep Aspect MSD - Most Significant Bit DB - Data Block BI - Block Indicator 61-If L*-(r _6X,_ t~SD 6xr S. A. D5 81 1 * Figure 2. 3 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 OW Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 Sprocket Holes Row rJ0. Z 3 10 A B fit- Xr r M5o Xr Xy xr }(r. Kr XY X~ Xr Kr ) * x, c * * * K ea 7(F~ Xi x~ r r x+ r MSD * * * XP x x P P XP * * * xr X x,- r Xr * * * * * * * START STOP STOP SCAt,J SCA-J C72AM * - Position never used MSD - Most significant Bit B.I. - Block Indicator CHECK BLOCK (n .`~ 0) Figure 2.4 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 2. 3 Punched Tape Program (continued) a. 6Yrs representation The value of jYrs is expressed as a four place decimal digit. Each digit is coded on the program tape as a binary-coded decimal number. For instance, ~Yrs ^ 0. 1068 inch it would be coded: The value of $Yrs is the only decimally coded quantity Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 2. 3 Punched Tape Program (continued x b. &Yrs representation The value of &Yrs is multiplied by a scale factor (3500). For instance, if A Yrs : 0. 09651 inch the machine value would be & Yrs = 334 and would be expressed as follows: AYr = 00101001100 units ABC E ) P G 14 C. AXrs representation The value of &Xr is multiplied by a scale factor Xr (10, 000). Consider the case where the maximum occurs at a 65o viewing angle when Yp = 12 inches. If the ratio $ Xrs /xrs = 0. 018, the machine value is 180 expressed as follows: Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 2.3 Punched Tape Program (continued)' 4 Xrs 010110100 units A 9 C D E F c 4 Xps = Xps This value is multiplied by a scale factor Xrs xrs of 29 and 7 is subtracted from the product. Flir instance, if Xps = 7. 361, (Z9 x 7. 361) - 7 = 3669-7. Xpw is Xrs Xrm represented in the tape as the binary rimber 00111001001100 and is stored in a 14-bit register. 17 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 2. 3 Punched Tape Program (continued) e. Xrs, n representation This value is calculated from the equation: Xr s, n m ?xr s, n + a and i = 25 28 This number is stored by the machine in a 17-bit register. The numerical value of Xrs, n is expressed as 213 machine units per inch. For instance, if Xrs, n = 7. 136, its numerical machine value is 58, 458 machine units and is expressed: Xrs,n 1-- 01110010001010110 Approve' orKelease'Nad6Wddk-1 O18984'747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 Scan Check Point r b N Row Number Command Bits Registered Number e um is 0 0 SYrs 1st decimal digit 0 1 bYrs 8Yrs 8Yrs dYrs 2nd decimal digit 3rd decimal digit 4th decimal digit 210 through 2? 25 through 21 0 5 AYrs 20 0 6 &Yrs 0 7 4 X r s 28 through 24 23 through 20 0 8 Xrs Xrs 0 9 Reserved for ON-OFF Commands h 212 ou 216 th 0 < n< 23 0 Xrs,n Xrs,n Xrs, n rs.n g r 211 through 27 26 through 22 21 through 20 Xrs /? Xrs Xps/ Xrs XPs/5rs 11 11 9 213 through 29 28 through 24 23 through 20 Not used Not used Reserved for ON-OFF Commands Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 3.0 Computation 3.1 General Before a program tape can be generated, the rectification, to be performed and the image size must be known. The general analytic transformation to be performed is as follows: xr = xp ? F 1 (Yp) 1.5 y r z F 2 F? (Yp) 1.6 It is defined by 1. Type of photography 2. Camera Focal Length 3. Isopoint Enlargement Ratio (from altitude) 4. Tilt Angle (in oblique photography) The boundaries of the image are established by the printing platen size (92 inch film) and 1. m - Isopoint Enlargement Ratio 2. b - Starting position distance of Yr axis from principal point 3. k - Approximate end point distance on Yr axis from principal point Before tape program computation it is also necessary to know: 1. %Xp - check point interval = 0. 5" 2. BYp - printing strip width 3. N - number of check points 0 < n = N = 21 4. S - number of strip scans required 0 s < S 5. d - starting point on Yp axis 6. q = 1 High Operating Speed q 2 Low Operating Speed Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 19 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 3.1 General (continued) 7. AYr scale factor - 3, 500 16 Xr /xr scale factor - 10, 000 9. a - Xr starting position 10. c - Xp starting position Values determined by the H229 Photo Rectifier design are: RXp = 0. 5000 inch N = 22,that is, n varies from 0 to 21 a - 5.5 inches c = 5.5 inches Values to be determined by preliminary calculations are 8Yp, S, d, q. The logical structure of program computation and tape readout also requires knowledge of the sequence of logical and numerical commands. See Section 3. 3. 3. 2 Preliminary Calculation and Subroutines Formulas for preliminary calculation are determined by the equations of rectification (equation 1.5 and 1.6) Calculation of 8Yp Panoramic 8Yp = 0. 5000 inch if ml 1 8Yp = 2F2-1 (Yr : 0. 2500 inch) if m< 1 Note F2-1 and F1-1 used for inverse function) Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 3. 2 Preliminary Calculation and Subroutines (continued) Calculation of%yp Oblique &Yp = F2-1 (-b + 0. 2500") -F2-1 (-b - 0. 2500") or 0.5000 inch, whichever is less. Calculation of S S = Modulate F2-1 (k) - F2 (-b) Yp -1 d = -F2 (-b) Calculation of q q = 1 (High Speed) if m = q = 2 (Low Speed) if m < 2 to next higher numb e r Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 3. 2 Preliminary Calculation and Subroutines (continued) Preliminary and program computation involves calculation with functions that will be required computer subroutines. Using equations 1. 5 and 1. 6, the tape data computation will require use of the following equations. Equations for Program Calculations SYrs [s ~Yp - d] -F2 1- 0 [(a - 1) ~Yp - d] Calculation accuracy - to nearest whole nurriber'_ nY [3, 5061 rs x 104 x FZ + Z) ~Y- d~ -F2(Z - a p Calculation accuracy to nearest whole n4mb-r ) SYp Sr Fl ( s + 2 ) $Y -d F1(s- 2) 8Yp- df [10, 0 0 0~ x Fl 8Yp-d Calculation accuracy - to nearest whole nurnbgr Approved For Release 2002/06/17 : CIA-RDP7`8B04747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 3. 2 Preliminary Calculation and Subroutines (continued) Equations for Program Calculations 4? xr(n, a) a In - 1) 8Xp -c x (F1 (s aYP - d)1 -a x 213 Calculation accuracy - to nearest whole tkirtzlb!r 29x3 F`1 Ls SYp-d1 Calculation accuracy - to nearest whole numbpr_ The scale factors shown are required for the coding used for numerical registers in the Photo Rectifier. The required calculation will use the following functional 1+2 mf xP = (n - 1) SXp - c yp 8Yp -d F 1(yp) '"m p sin t F2(yp) F Z(yp ) Ftan -1 (yn ) m cos t m aecJ + yo sin t Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 Approved For Release 2002/06/17 : CIA-RDP78B04747A000600080017-0 3. 2 Preliminary Calculation and SubroutinC"O (continued) -1 5a. F2 (Y. r) - mf tan (yr) Panoramic -T- - I m Yr sec t 5b. F2 (yr) cost - Yr sint Oblique On-Off Command logic must also be programrr tt into automatic computations. In terms of check block number and tape block row number (p) the logic of these below. commands is gives, scan number (s) Machine Command Logic Command Logic 9A (register) If n = 0 and p - 9 9B (Start Scan) If n - I and j' - 9 9C (Stop Scan) If n = 21, and p - 9 9D (Stop Program) If n = 21, p = 9, and s - S 9E (Sweep Aspect) If n - 0, p = 9, and AXr Xr is negative 3. 3 Computation Sequence The sequence of program computation and tape punch is described by the machine operating program (section 2. 3). This sequence is collected on the following table. Approved For Release 2002/06/17 : CIA-RDP78B04747-At100600080017-0 Approved For Release 2002/06/17 : CIA-RDP78BO4747A000600080017-0 COMPUTATION AND TAPE PUNCH SEQUENCE 2 3 4 12 Command Start n.0, p=0 Reg SYrs n:0, p=l n:0, p= 2 nwO, pu3 n= O, p=4 Reg. AYrs nu 0, p:5 n=0, p=6 ns0, p=7 F A Reg, L~ Xr n=0, P=8 n:0, P=9 n*0, p=O Reg. Xr (s, n) n*0, p=O n40, pu 2 n* 0, p-3 nk0, p=4 r '1 o Reg Xp 0 Xr J n* 0, p:5 n*O, p"6 n*0, p=7 n* 0, P. 8 n=1, p=9 Operation Clear s, n, & p counters Compute 8Y r s Punch 1st decimal digit Punch 2nd decimal digit Punch 3rd decimal digit Punch 4th decimal digit Compute A Y Punch bits 2IU to 20 Punch bits 25 to 21 Punch bits 20 Compute 1 A Xr-, L XrJ s Punch bits 28 to 24 Punch bits 23 to 20 a. Punch reg. command 9A b. Punch sweep ascpect (9E) If AXr is negative 1