DCraw in Theli ....

Tipps & Tricks rund um Theli, kleine Helferlein, bekannte Probleme und deren Lösung.
Forumsregeln
In diesem Unterforum bitte keine neuen ungelösten Probleme oder Fehlermeldungen ohne Lösung posten. Das gehört in "Arbeiten mit Theli".

DCraw in Theli ....

Beitragvon Holger » Sonntag 27. November 2011, 13:46

Hi,

wird eigentlich in Theli immer die neuste DCraw Version verwendet?

Oder ist es eventuell sogar zu empfehlen die RAW Bilder einer Farbkamera schon vor der Bearbeitung mit Theli in die einzelnen Farbkanäle auf zuteilen und dann die Bilder wie die einer s/w CCD zu behandeln?
Gruß und CS
Holger
Holger
 
Beiträge: 165
Registriert: Donnerstag 29. September 2011, 16:02
Wohnort: Berlin - Buckow

Re: DCraw in Theli ....

Beitragvon mischa » Sonntag 27. November 2011, 17:16

hi holger,

ich schaue 2-3 mal im jahr ob es bei dcraw eine aenderung gegeben hat.

mischa
mischa
Moderator
 
Beiträge: 1266
Registriert: Freitag 7. Oktober 2011, 14:07
Wohnort: Chile

Re: DCraw in Theli ....

Beitragvon moos » Sonntag 27. November 2011, 20:16

Holger hat geschrieben:Hi,

Oder ist es eventuell sogar zu empfehlen die RAW Bilder einer Farbkamera schon vor der Bearbeitung mit Theli in die einzelnen Farbkanäle auf zuteilen und dann die Bilder wie die einer s/w CCD zu behandeln?


Vorteile, es so nicht zu machen:
    3fache Dateigrößen bis zum Weighten
    dcraw macht eine Belichtungsanpassung, bias, dark passt nicht mehr
    dcraw macht eine agressive Farbinterpolation, das Rauschen wird größer
    dcraw liefert tiff, ansich keine Problem, aber ein Umweg
    dcraw überträgt keine Metadaten ins tiff, theli kennt die Exposures und Filter nicht mehr
    Kalibrierung mit interpolierten Bildern verliert die Einzelpixelfehler
    wurde anfangs in Theli gemacht und ist verworfen worden ... lange Geschichte
    Theli behandelt bisher alle Kameras einheitlich, wäre ein Sonderweg ( aber machbar )


Weg dies doch so zu tun:
    eigenes Splittingscript mit zusätzlichen dcrawzeilen
    Filter Key sauber pflegen
Ciao Carsten
moos
 
Beiträge: 504
Registriert: Dienstag 18. Oktober 2011, 19:06

Re: DCraw in Theli ....

Beitragvon Knickohr » Sonntag 27. November 2011, 20:33

Hallo,

das hatten wir doch schon mal, gell Carsten ;-)

Code: Alles auswählen
theli@theli:~$ more .theli/scripts/process_split_CanonEOS450DaTIFF@Pentax.sh
#!/bin/bash -xv

# ***************************************
# ***** INSTRUMENT splitting script *****
# *****      created by THELI       *****
# ***************************************

# splits CanonEOS450DaTIFF@Pentax images

# $1: main directory
# $2: science directory

INSTDIR=instruments_professional
if [ ! -f ${INSTDIR}/${INSTRUMENT}.ini ]; then
     INSTDIR=instruments_commercial
fi
if [ ! -f ${INSTDIR}/${INSTRUMENT}.ini ]; then
     INSTDIR=~/.theli/instruments_user/
fi
. ${INSTDIR}/${INSTRUMENT:?}.ini

. bash.include


# rename the images to the value of a FITS key (if requested)

if [ "${V_PRE_RENAME_CHECKED}" = "1" ]; then

   cd /$1/$2

   ls -1l *>  ${TEMPDIR}/fitskey_$$

   cat ${TEMPDIR}/fitskey_$$ |\
   {
     while read file
     do
       newname=`${P_GETKEY} ${file} ${V_RENAME_FITSKEY}`
       if [ "${newname}" != "" ]; then
          mv ${file} ${newname}
       else
          echo ERROR: Could not find ${V_RENAME_FITSKEY} in the FITS header
       fi
     done
   }
fi
#convert tif to R,G,B fits files
cd /$1/$2
mkdir ORIGINALS
FILES=`ls -1l $1/$2/ | ${P_GAWK} '($1 ~ /^-/) {print $NF}'`
for TIFF in ${FILES}
do
BASE=`basename $TIFF .tif`
echo "Basename $BASE"
for i in Red Green Blue
do
convert -separate -channel $i  $TIFF ${BASE}_$i.tif && tiff2fits -i ${BASE}_$i.t
if -o ${BASE}_$i.fits && replacekey ${BASE}_$i.fits "FILTER  ='$i' " DUMMY001 &&
rm ${BASE}_$i.tif
done
mv $TIFF ORIGINALS
done
# now do the normal stuff for monochrome fits
FILES=`ls -1l $1/$2/ | ${P_GAWK} '($1 ~ /^-/) {print $NF}'`

cd /$1/$2

#mkdir ORIGINALS

for FILE in ${FILES}
do
   SUFFIX=`echo $FILE | ${P_GAWK} 'BEGIN {FS="."} {print "."$NF}'`
   BASE=`basename $FILE ${SUFFIX}`
   mv ${FILE} ${BASE}.fits
   FILE=${BASE}.fits

   RA=`${P_GETKEY} ${FILE} "RA"`
   if [ "${RA}" = "" ]; then
       RA=0.001
   fi

   DEC=`${P_GETKEY} ${FILE} "DEC"`
   if [ "${DEC}" = "" ]; then
       DEC=0.0
   fi

   EXPTIME=`${P_GETKEY} ${FILE} "EXPTIME"`
   if [ "${EXPTIME}" = "" ]; then
       EXPTIME=`${P_GETKEY} ${FILE} "EXPOSURE"`
   fi
   if [ "${EXPTIME}" = "" ]; then
       EXPTIME=1.0
   fi

   OBJECT=`${P_GETKEY} ${FILE} "OBJECT"`
   if [ "${OBJECT}" = "" ]; then
       OBJECT=UNKNOWN
   fi

   EQUINOX=`${P_GETKEY} ${FILE} "EQUINOX | sed 's/[^0-9.]//g'"`
   if [ "${EQUINOX}" = "" ]; then
       EQUINOX=2000.0
   fi

   MJD=`${P_GETKEY} ${FILE} "MJD-OBS"`
   if [ "${MJD}" = "" ]; then
       MJD=52000.0
   fi

   FILTER=`${P_GETKEY} ${FILE} "FILTER" clean`
   if [ "${FILTER}" = "" ]; then
       FILTER=UNKNOWN
   fi

   LST=`${P_GETKEY} ${FILE} "LST"`
   if [ "${LST}" = "" ]; then
       LST=0.0
   fi

   AIRMASS=`${P_GETKEY} ${FILE} "AIRMASS"`
   if [ "${AIRMASS}" = "" ]; then
       AIRMASS=1.0
   fi

   GABODSID=`${P_NIGHTID} -t 16:00:00 -d 31/12/1998 -m ${MJD} |\
       ${P_GAWK} ' ($1 ~ /Days/) {print $6}' | ${P_GAWK} 'BEGIN{ FS="."} {print
$1}'`

   # Preserve the CD matrix if present.
   # If this does not work, replace the 'get_wcs' function below
   # with the explicit code in 'bash.include', and then modify it
   # according to your needs.
   get_wcs

   ${P_FITSSPLIT_ECL} \
      -CRPIX1 "${cpx1}" \
      -CRPIX2 "${cpx2}" \
      -CD11 "${cd11}" \
      -CD12 "${cd12}" \
      -CD21 "${cd21}" \
      -CD22 "${cd22}" \
      -CRVAL1 ${RA} -CRVAL2 ${DEC} -EXPTIME ${EXPTIME} -AIRMASS ${AIRMASS} \
      -GABODSID ${GABODSID} -FILTER ${FILTER} -EQUINOX ${EQUINOX} -OBJECT ${OBJE
CT} \
      -M11 "1" \
      -M12 "0" \
      -M21 "0" \
      -M22 "1" \
      ${FILE}

   k=1
   while [ "${k}" -le "${NCHIPS}" ]
   do
     tmp=`${P_GETKEY} ${FILE} "DATE-OBS"`
     ${P_REPLACEKEY} ${BASE}_${k}.fits "DATE-OBS= ${tmp}" DUMMY1
     k=$(( $k + 1 ))
   done

   #mv ${FILE} ORIGINALS/${BASE}${SUFFIX}
rm ${FILE}
# mv fits to new dirs
   mkdir /$1/$2_Rot /$1/$2_Gruen /$1/$2_Blau
   mv *Red_1.fits /$1/$2_Rot
   mv *Green_1.fits /$1/$2_Gruen
   mv *Blue_1.fits /$1/$2_Blau

done


Aber Vorsicht, das Script muß für jede Kamera entsprechend angepaßt werden :
more .theli/scripts/process_split_CanonEOS450DaTIFF@Pentax.sh

und im Script :
# splits CanonEOS450DaTIFF@Pentax images

Danach dürft ihr kein "Create script" mehr machen, sonst zerstört ihr das Script wieder :!:

Thomas
Benutzeravatar
Knickohr
Moderator
 
Beiträge: 631
Registriert: Donnerstag 29. September 2011, 12:01
Wohnort: Blaustein

Re: DCraw in Theli ....

Beitragvon Holger » Sonntag 27. November 2011, 20:57

Hallo Carsten und Mischa,

danke für eure Erklärungen.

Theli behandelt bisher alle Kameras einheitlich, wäre ein Sonderweg ( aber machbar )


Bloß keinen Sonderweg den ich eh nicht verstehen würde. :roll: :shock:

Ich dachte nur an mein letztes Randproblem.

Also doch auf eine s/w CCD sparen.
Denn bei der ATIK383 die ich testweise hatte gab es diese Randprobleme nicht.
Gruß und CS
Holger
Holger
 
Beiträge: 165
Registriert: Donnerstag 29. September 2011, 16:02
Wohnort: Berlin - Buckow


Zurück zu Tipps und Tricks, FAQ

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste