Advertisement
Guest User

Untitled

a guest
Mar 25th, 2011
357
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 8.78 KB | None | 0 0
  1. #****************************************
  2. #3D Conversion
  3. #****************************************
  4.  
  5. #@gimp 3D Conversion : gimp_make3D, gimp_make3D(1)
  6. #@gimp : sep = separator()
  7. #@gimp : note = note("Stereoscopic settings:")
  8. #@gimp : Scene selector = choice("daylight scene","light motive","dark
  9.  
  10. motive","landscape","center foreground","center background","left
  11.  
  12. foreground","left diagonal foreground","right foreground","right diagonal
  13.  
  14. foreground","left and right foreground","bottom and top foreground","central
  15.  
  16. perspective outdoor","central perspective indoor","portrait","human 1","human
  17.  
  18. 2","studio","underwater","flat")
  19. #@gimp : Far point deviation = float(3,-100,100)
  20. #@gimp : Near point deviation = float(20,-100,100)
  21. #@gimp : Depth field control = float(20,0,100)
  22. #@gimp : Feature analyzer threshold = float(0,0,5)
  23. #@gimp : Feature analyzer smoothness = float(0,0,5)
  24. #@gimp : Local detail enhancer = float(0,0,5)
  25. #@gimp : DOF analyzer = float(0,0,5)
  26. #@gimp : Frequency analyzer = float(0,0,5)
  27. #@gimp : Flip left / right = bool(0)
  28. #@gimp : Use individual depth map = bool(0)
  29. #@gimp : note = note("<small>To use this option your depth map must be placed
  30.  
  31. below your image. Switch input layers to <i><b>Active and
  32.  
  33. below</b></i>.</small>")
  34. #@gimp : sep = separator()
  35. #@gimp : note = note("Image settings:")
  36. #@gimp : Black & White = bool (0)
  37. #@gimp : Output format = choice("Anaglyph red/cyan","Anaglyph
  38.  
  39. blue/yellow","Stereo pair small","Stereo pair big","Stereo pair
  40.  
  41. bottom/top","Depth map only","Unaligned images")
  42. #@gimp : Gamma compensation = float(1.2,0,4)
  43. #@gimp : Color boost = float(1.2,0,4)
  44. #@gimp : Anaglyph glasses adjustment = float(0,-100,100)
  45. #@gimp : Autocrop = bool (1)
  46. #@gimp : Bidirectional rendering = bool (0)
  47. #@gimp : sep = separator(), note = note("<small>Author : <i>Tom Keil</i>.      
  48.  
  49. Last update : <i>2011/03/25</i>.</small>")
  50. #@gimp : note = link("Filter explained
  51.  
  52. here","http://www.mediafire.com/?8d2jffrawfd4r7s")
  53.  
  54. gimp_make3D :
  55.  
  56. # prepare image
  57.  
  58. -if {$12==0} -to_rgb[0] --gimp_do_nothing[0]
  59. -else -luminance[0] -to_rgb[0] --gimp_do_nothing[0] -endif
  60.  
  61. # create depth map
  62.  
  63. -if {$11==0}
  64. -if {$1==0} --channels[0] 2
  65. -gimp_channel_processing[-1] 1,{{$4/25}+0.1},0,0,0,0,100,256,0,1,0,2,0,0
  66. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,90,0,{100-{$4/1.5}}
  67. -rv[-1,-2] -gimp_compose_lighten[-1,-2] {0.5+{$4/200}}
  68. -elif {$1==1} --luminance[-1]
  69. -gimp_channel_processing[-1] 1,{$4/25},0,0,0,0,100,256,0,0,0,2,0,0
  70. -elif {$1==2} --luminance[-1] -negative[-1]
  71. -gimp_channel_processing[-1] 1,{$4/25},0,0,0,0,100,256,0,0,0,2,0,0
  72. -elif {$1==3}
  73. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,90,0,{100-$4}
  74. -elif {$1==4}  
  75. --gimp_radial_gradient[-1] 0,0,0,255,255,255,255,255,1,$4,100,50,50
  76. -elif {$1==5}
  77. --gimp_radial_gradient[-1] 0,0,0,255,255,255,255,255,0,0,{100-$4},50,50
  78. -elif {$1==6}
  79. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,1,0,$4,100
  80. -elif {$1==7}
  81. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,1,315,$4,100
  82. -elif {$1==8}
  83. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,0,0,{100-$4}
  84. -elif {$1==9}
  85. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,45,0,{100-$4}
  86. -elif {$1==10}
  87. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,0,50,{100-{$4/2}}
  88. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,180,50,{100-{$4/2}}
  89. -compose_lighten[-1,-2]
  90. -elif {$1==11}
  91. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,90,50,{100-{$4/2}}
  92. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,270,50,{100-{$4/2}}
  93. -compose_lighten[-1,-2]
  94. -elif {$1==12}
  95. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,0,50,{100-{$4/4}}
  96. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,180,50,{100-{$4/4}}
  97. -compose_lighten[-1,-2]
  98. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,90,0,{100-{$4/2}}
  99. -compose_lighten[-1,-2]
  100. -elif {$1==13}
  101. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,0,50,{100-{$4/4}}
  102. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,180,50,{100-{$4/4}}
  103. -compose_lighten[-1,-2]
  104. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,90,0,{100-{$4/4}}
  105. -compose_lighten[-1,-2]
  106. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,270,50,{100-{$4/4}}
  107. -compose_lighten[-1,-2]
  108. -elif {$1==14} --channels[-1] 0
  109. -gimp_channel_processing[-1] 1,{$4/25},0,0,0,0,100,256,0,0,0,2,0,0
  110. --gimp_radial_gradient[-1] 0,0,0,255,255,255,255,255,1,$4,100,50,50
  111. -rv[-1,-2] -compose_multiply[-1,-2]
  112. -elif {$1==15}
  113. --gimp_gaussian_blur[-1] $6,0,0,1,0,0,0
  114. -gimp_edges[-1] {$6/2},{50-{$4/2}},1,0
  115. --gimp_gradient_norm[0] {$6/2},{1.5-{$4/67}},0,{100-$4},0,0
  116. -rv[-1,-2] -compose_lighten[-1,-2] --channels[0] 0
  117. -gimp_channel_processing[-1] 1,{{$4/25}+1},0,0,0,0,100,256,0,0,0,2,0,0
  118. -rv[-1,-2] -compose_lighten[-1,-2]
  119. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,0,50,{100-{$4/4}}
  120. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,180,50,{100-{$4/4}}
  121. -compose_lighten[-1,-2]
  122. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,90,0,{100-{$4/2}}
  123. -compose_lighten[-1,-2] -rv[-1,-2] -compose_lighten[-1,-2]
  124.  
  125. -elif {$1==16} --gimp_gaussian_blur[-1] $6,0,0,1,0,0,0
  126. -gimp_edges[-1] {$6/2},{50-{$4/2}},1,0
  127. --gimp_gradient_norm[0] {$6/2},{1.5-{$4/67}},0,{100-$4},0,0
  128. -rv[-1,-2] -compose_lighten[-1,-2] --channels[0] 0
  129. -gimp_channel_processing[-1] 1,{{$4/25}+0.5},0,0,0,0,100,256,0,0,0,2,0,0
  130. -rv[-1,-2] -compose_lighten[-1,-2]
  131. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,0,0,{100-$4}
  132. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,180,0,{100-$4}
  133. -compose_darken[-1,-2] -rv[-1,-2] -compose_darken[-1,-2]
  134.  
  135. --gimp_linear_gradient[-1] 0,0,0,255,255,255,255,255,0,90,75,{100-{$4/4}}
  136. -rv[-1,-2] -gimp_compose_lighten[-1,-2] 0.5
  137.  
  138.  
  139. -elif {$1==17} --gimp_gaussian_blur[-1] $6,0,0,1,0,0,0
  140. -gimp_edges[-1] {$6/2},{50-{$4/2}},1,0
  141. --gimp_gradient_norm[0] {$6/2},{1.5-{$4/67}},0,{100-$4},0,0
  142. -rv[-1,-2] -compose_lighten[-1,-2] --channels[0] 0
  143. -gimp_channel_processing[-1] 1,{{$4/25}+0.5},0,0,0,0,100,256,0,0,0,2,0,0
  144. -rv[-1,-2] -compose_lighten[-1,-2]
  145. -elif {$1==18} --channels[-1] 0
  146. -gimp_channel_processing[-1] 1,{$4/25},0,0,0,0,100,256,0,0,0,2,0,0
  147. -elif {$1==19} --fc[-1] 0,0,0
  148. -endif
  149.  
  150. # individual depth map
  151.  
  152. -else -rv[1,-1] -to_rgb[-1] -luminance[-1] -endif
  153.  
  154. # analyze image features
  155.  
  156. -if {$9!=0}
  157. --fc[0] 128,128,128 --channels[0] 2 -negative[-1] -c[-1] 0,90
  158. -n[-1] 0,128 -rv[-1,-2] -compose_darken[-1,-2]
  159. --channels[0] 0 -negative[-1] -c[-1] 165,255 -n[-1] 128,255 -rv[-1,-2]          
  160.  
  161. -compose_hardlight[-1,-2] -rv[-1,-2]
  162. -if {$11==0} -if {$1!=19} -gimp_compose_hardlight[-1,-2] {$9/5}
  163. -else -gimp_compose_value[-1,-2] {$9/5}
  164. -gimp_channel_processing[-1] 1,{$4/25},0,0,0,0,100,256,0,0,0,2,0,0
  165. -endif
  166. -else -gimp_compose_value[-1,-2] {$9/5} -endif -endif
  167.  
  168. -if {$8!=0} --gimp_isophotes[0] {{$8*3}+2},0,0,0
  169. -gimp_channel_processing[-1] 1,1,255,0,0,0,100,256,0,0,0,2,0,0
  170. -gimp_gaussian_blur[-1] {{w+h}/350},0,0,1,0,0,0
  171. -rv[-1,-2] -gimp_compose_overlay[-1,-2] {$8/5} -endif
  172.  
  173. -if {$5!=0} --gimp_gradient_norm[0] 0,1,0,100,1,0
  174. -rv[-1,-2] -compose_multiply[-1,-2] -gimp_segment_watershed[-1] $5,$6,0,0 -endif
  175.  
  176. -if {$7!=0} --luminance[0] -gimp_map_tones[-1] 1,{0.25-{$7/20}},0,30,3,0
  177. -rv[-1,-2] -gimp_compose_overlay[-1,-2] {$7/10} -endif
  178.  
  179. -if {$11==0} -gimp_gaussian_blur[-1] 0,{{w+h}/700},{{w+h}/350},1,0,0,0 -endif
  180.  
  181. -n[-1] 0,255
  182.  
  183. #create second view
  184.  
  185. -if {$13!=5} -if {$18==0}
  186. -shift[-2] $2,0
  187. -r[-1] 100%,100%,1,2 -s[-1] c -f[-1] 0 -n[-2] 0,$3 -a[-1,-2] c
  188. -warp[-2] [-1],1 -rm[-1]
  189. -else -shift[-2] $2,0
  190. -r[-1] 100%,100%,1,2 -s[-1] c -f[-1] 0 -n[-2] 0,{$3/2} -a[-1,-2] c
  191. -warp[-2] [-1],1
  192. -r[-1] 100%,100%,1,2 -s[-1] c -f[-1] 0 -n[-2] 0,{-$3/2} -a[-1,-2] c
  193. -warp[-3] [-1],1 -rm[-1] -endif -endif
  194.  
  195.  
  196. #crop images
  197.  
  198. -if {$17==1} -if {$13!=5}
  199. -if {$2>=0} -crop[-1,-2] $2,0,{w},{h} -else -crop[-1,-2] 0,0,{w+$2},{h} -endif
  200. -if {$18==0}
  201. -if {$3>=0} -crop[-1,-2] $3,0,{w},{h} -else -crop[-1,-2] 0,0,{w+$3},{h} -endif
  202. -else -crop[-1,-2] {abs($3/2)},0,{w-abs($3/2)},{h}
  203. -endif -endif -endif
  204.  
  205. #allign stereoscopic image
  206.  
  207. -if {$13==0} -if {$10==0} -rv[-1,-2] -endif -s c
  208. -rm[-3,-4,-5] -a[-1,-2,-3] c
  209.  
  210. -elif {$13==1} -if {$10==0} -rv[-1,-2] -endif -s c
  211. -rm[-6,-5,-1] -mv[0] 3  -a[-1,-2,-3] c
  212.  
  213. -elif {$13==2} -if {$10==1} -rv[-1,-2] -endif
  214. -r[-1,-2] 50%,50% -a[-1,-2] x
  215. -elif {$13==3} -if {$10==1} -rv[-1,-2] -endif -a[-1,-2] x
  216. -elif {$13==4} -if {$10==1} -rv[-1,-2] -endif -a[-1,-2] y
  217. -elif {$13==5} -k[-1] -elif {$13==6} -rv[-1,-2] -endif
  218.  
  219. #adjust output images
  220.  
  221. -apply_gamma $14
  222. -gimp_mix_lab 1,0,0,$15,0,0,$15,0,0,0,2,0
  223. -if {$13==0} -gimp_mix_rgb 1,$16,0,1,0,0,1,0,0,0,2,0 -endif
  224. -if {$13==1} -gimp_mix_rgb 1,0,0,1,0,0,1,$16,0,0,2,0 -endif
  225.  
  226. #************END OF FILTER***************
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement