Guten Morgen, ich überlege gerade ob folgendes Projekt realisierbar ist und ob ich da wirklich tiefer einsteigen möchte. Vielleicht kann mir ja der eine oder andere etwas weiterhelfen. Idee: Eine Panoramakamera mit einem Zeilensensor (CCD oder CMOS). Und ja ich weiß, so etwas gibt es schon, ultra high quality 160Megapixel, wahrscheinlich genausoviele Mega-Euro an Kosten usw... Mir schwebt ein etwas handlicheres Gerät vor. Max. Größer einer 1 Liter Colaflasche, später eher kleiner... Prinzip: Der Linearsensor wird über einen uC ausgelesen und die Daten auf einem RAM zwischengepuffert, dann als Raw auf SD-Karte gespeichert. Die Umwandlung zu einem Panoramabild kann später im Rechner erfolgen. Bei genügend hoher Drehfrequenz braucht man vermutlich gar keine Positionsmessung, ansonsten Korrektur der Bewegung der Kamera über Bewegungssensoren, bzw. über Bildverarbeitung. Letztendlich soll es mit der Kamera möglich sein, ein 360° Panorama in weniger als 1s aufzunehmen. D.h. ich halte die Kamera über den Kopf, drücke den Auslöser und schwupp ist das Bild im Kasten. Eckdaten: Bildhöhe 2k Pixel, Breite (abhängig von vertikalem Blickwinkel) 8k - 20k Pixel. Was mir nicht ganz klar ist, welche Daten krieg ich von einem Zeilensensor und wie verarbeite ich die weiter? Gibt es, bzw. kann man sie kaufen, Spezialchips für die Bildverarbeitung? Und was brauchen die an externen Bausteinen? Bitte erst mal keine Anmerkungen zur Mechanik und Optik. Danke und Gruss Andreas
Solche Sensoren sind ziemlich verbreitet und mit fertiger Ansteuerungselektronik auch recht einfach zu finden - in Flachbettscannern. Es gibt entsprechende Projekte, bei denen ein üblicher Flachbettscanner modizifiert wurde, um als Kamera verwendet zu werden. Hier ein Beispiel: http://home.comcast.net/~scancams/
Alle Zeilensensoren die ich kenne können nur Graustufen. Und schon bei 2k mal 8k Pixeln musst Du bei Deiner avisierten Geschwindigkeit bei 8 Bit Graustufen schon 16 Mbyte/s in den RAM schaufeln. FPGA wäre da meiner Meinung nach wohl die einfachere Lösung. Jörg
Zeilensensor-Ansteuerung wurde hier schon gemacht, in Zusammenhang mit dem Low-Cost-Sprktrometer. Die CCD-Zeile so schnell auszulesen, daß man mit einer kontinuierlichen Drehung ohne verwischen klar kommt, ist aber sehr anspruchsvoll und erfordert wahrscheinlich einen CPLD, der einen Flash-ADC ansteuert (oder drei, je nachdem) als Vorverarbeitung. Ich hätte das mit einem Schrittmotor gebaut, gegebenenfalls Mikroschrittbetrieb oder mit Getriebe dran.
Andreas Kr schrieb: > Was mir nicht ganz klar ist, welche Daten krieg ich von einem > Zeilensensor und wie verarbeite ich die weiter? Du bekommst pro Pixel oder drei analogen Farbwerte (R,G,B). Die mußt du dann wandeln und abspeichern. > Bildhöhe 2k Pixel, Breite 8k - 20k Pixel. Das sind also 2000*20000 = 40 Mio Pixel pro Sekunde. Wenn du jetzt so einen schnelle ADC am laufen hast, dann hast du bei drei Farben und 8 Bit Auflösung 120MB/s abzuspeichern. Bei Datenübertragungsraten von 4MB/s dauert es dann also geraume Zeit, bis das aufgenommene Bild auf einer SD-Karte gespeichert ist. Solange wirst du es zwischenspeichern müssen --> 120MB Speicher nötig... Das Ganze ist überaus sportlich und mit einem "üblichen" uC garantiert nicht mehr zu machen. Das deutet eher mal auf dedizierte Hardware (FPGA) hin...
Joerg Wolfram schrieb: > Alle Zeilensensoren die ich kenne können nur Graustufen. Sieh mal in einen üblichen Flachbettscanner.
Bei meinem "üblichen Flachbettscanner" wechselt die Beleuchtung ihre Farbe, der Sensor selbst kann dann logischerweise nur Graustufen. Daher hatte ich auch geschrieben "die ich kenne". Ich habe noch ein paar CCD-Zeilen aus Barcode-Scannern, die aber allesamt auch nur Graustufen können. Jörg
Dann hast Du einen "Lide"-Scanner. Andere Flachbettscanner arbeiten mit weißen CCFL-Röhren und haben Farbsensoren.
Danke für den Link zu den Scancams, den kannte ich noch nicht. Hm, bin wohl etwas ernüchtert jetzt. Vorläufiges Fazit: Ohne Spezialhardware (FPGA, CPLD usw.) wahrscheinlich nicht realisierbar, d.h. Start mit einem einfachen Zeilensensor ist aussichtslos. Bliebe die Alternative, einen Scanner entsprechend umzubauen... Mit der max. einen Sekunde Belichtungszeit wirds dann wohl eher auch nichts und zusätzlich wird ein Laptop benötigt, was den Aufnahmeaufwand ganz schön in die Höhe treibt. Na ja, vielleicht probier ich's in ein paar Jahren nochmal. Mit Stereo-Kameras und 3D war es ja auch lange Zeit ziemlich mau und heute gibt es sogar schon bezahlbare 3D-LCDs fürs Wohnzimmer! Danke an alle! Andreas
Moin, ein paar Inputs.. Zeilenscan-Apps kann man mit dem Blackfin recht gut erledigen (DMA-fähiger video port, PPI). Theoretisch gehen da 60 MByte/s, praktisch sind's eher die Hälfte unter uClinux, resp. bei häufigem Speicherzugriff (Verarbeitung, usw.) Allerdings ist das recht knifflig, das System so hinzubekommen, dass keine Zeilen verloren gehen können. Da die Zeilensensoren recht teuer sind, kannst Du alles zunächst mit einem volldigitalen CMOS global-Shutter-Sensor (rolling geht teils auch) prototypen. Habe z.B. den Aptina MT9V032 (20 € bei Framos) eingesetzt und verschicke die Frames per Ethernet. Gibt auch eine nette Kamera mit SD-Card-slot und Ethernet (leanXcam), da ist dieser Sensor eingebaut. Deren Software ist allerdings eher 'akademisch' zu sehen (für schnelle Echtzeit-Zeilenerfassung nicht ausreichend). 1-2 Mannjahre musst Du aber für die Entwicklung schon rechnen, wenn nicht mehr (je nach Sensor und nötiger Glue-Logik). Am flexibelsten ist natürlich ein Gespann FPGA/DSP, wenn Du da eine Prototyping-Plattform hast, bist du ev. viel schneller. Gruss, - Strubi
Man kann den Scannerkopf auch anstatt in einer kontinuierlichen Bewegung in kleinen Schritten bewegen. Dann müsste die Datenmenge zu schaffen sein. Nur die Drehung wird langsamer. Das generelle Problem bei Panoramafotographie ist, dass die Natur sich bewegt. Das kann zum Beispiel ein Zug sein: Erst nimmst du den Anfang der Lokomotive auf, und dann das Ende des hinteren Wagens. Ich kenne die Schwenk-Methode nur, um Sterne zu fotographieren. So kann man ja den ganzen Himmel aufnehmen, und da bewegt sich auch nix (Hubschrauber & Flugzeuge mal ausgeschlossen). Mit freundlichen Grüßen, Valentin Buck
@Andreas Kr (andyk) Fang doch erst mal klein an, z.B. einen Flachbett- in einen Panoramascanner umzubauen. Bei Pollin gibts z.B. zwei Schrittmotoren mit KOMPLETTER Scannerelektronik (Schrittmotor NEOCENE 2T354264 etc.) und CCD-Line RGB Sensoren (Bildsensor NEC µPD8872CY etc.). Auf der Platine der Scannerelektronik befindet sich auch eine USB-Schnittstelle. Ich würde nämlich erst einmal probieren ob Dein Panoramakonzept am PC funktioniert. Hoffe Anregung gegeben zu haben.
Ich vergass noch anzumerken: Es gibt diverse FPGA-boards mit FX2 Cypress-USB-Adapter (Digilent, Cesys, usw.). Das Cesys-Board hat z.B. eine sehr gute SW-Ausstattung um gleich unter Linux loszulegen. Damit kann man sich auch ne nette USB-Kamera bauen, dürfte hier im Forum auch einige Referenzapplikationen geben, und von der HW her die billigste Variante sein. Aber die Entwicklung ist aufwendiger und der FX2 nicht so wahnsinnig doll zu debuggen. Grüsse, - Strubi
Genau dieser CCD-Line RGB Sensor von Pollin hat mich vor einiger Zeit auf die Idee zu dieser Kamera gebracht. Mit dem Schrittmotor hätte ich wahrscheinlich keine Probleme. Auch die Ansteuerung über Mikroschritte oder quasi-kontinuierlich dürfte gehen. Das Haupt-Problem was ich im Moment sehe ist eben das Auslesen des Sensors und die Verarbeitung der anfallenden Daten. Ich habe zwar auch schon mit FPGAs etwas gearbeitet, aber bei dem Problem geht es dann eben doch ziemlich ans Eingemachte! Die leanXcam sieht aber tatsächlich ganz interessant aus. Das wäre ein schönes Development-Board für Bilderfassung und Verarbeitung. Ich bin gerade am Überlegen, die Kamera, die immerhin 60fps schafft, zu drehen und dann binnen 3s soviel Bildmaterial zu sammeln um ein Panorama berechnen zu können. Das wäre zwar nicht die ursprüngliche Idee, aber könnte man immerhin auch mit fast jeder Videokamera machen... Hat das Problem verschoben von Hardwareentwicklung zu Softwareentwicklung. Hm. :-(
@Andreas Kr (andyk) Ich staune immer wieder über Deine angegebenen Zeiten (erste Thread 1s, jetzt letzter Thread 3s). Hast Du Dir schon mal Gedanken über Belichtungszeiten, Beleuchtungsstärken etc. gemacht ? Wahrscheinlich nicht. Und wie die potentielle Optik+Mechanik aussehen muß ? Wahrscheinlich auch nicht. An den Thema 'Line Scan Panorama' haben sich nämlich schon einige Unternehmen (fast) die Zähne ausgebissen, Panoramakameras mit PC wohlgemerkt.
Andreas Kr schrieb: > Letztendlich soll es mit der Kamera möglich sein, ein 360° Panorama in > weniger als 1s aufzunehmen. D.h. ich halte die Kamera über den Kopf, > drücke den Auslöser und schwupp ist das Bild im Kasten. > Eckdaten: Bildhöhe 2k Pixel, Breite (abhängig von vertikalem > Blickwinkel) 8k - 20k Pixel. Ganz unabhängig von der Elektronik, 20k Spalten nacheinander innerhalb einer Sekunde heißt eine Belichtungszeit pro Pixel von maximal 1/20000 s. Noch nicht eingerechnet Zeiten fürs Auslesen/Löschen, was die verfügbare Zeit für die Belichtung weiter reduziert. Ab 22.077 Euro gibts sowas auch fertig (ohne Objektiv natürlich): http://www.roundshot.ch/xml_1/internet/de/application/d438/d925/f933.cfm
Bravo, da hat ja wirklich mal einer nachgerechnet: Andreas B. (Gast) schrieb: > .. 20k Spalten nacheinander innerhalb einer Sekunde heißt eine Belichtungszeit > pro Pixel von maximal 1/20000 s .. Und von der Zeit einer mechanisch/optisch sauberen Positionierung der Objektivmechanik ganz zu schweigen. Und nun der Umkehrschluss aus der Aussage von Andreas B. (Gast) für in der Fotografie übliche Belichtungszeiten, vielleicht auch mal bei nicht ganz so optimalen Lichtverhältnissen ?
Andreas Kr schrieb:
> Hab ich in der Tat!
.. hab ich WAS?
Die physikalische Optik begriffen? Die dynamische Mechanik rotierender
Teile verinnerlicht? Die Naturgesetzte erschlossen?
Na, dann ist es ja gar kein Problem mehr...
Ich klink mich aus.
schneller AD und GA144(für 20 dollar) von GA, und die sache ist geritzt! http://greenarraychips.com/
Oha, so etwas wie die SEAForth Chips, und tatsächlich lieferbar. Dennoch, wer gleich so groß einsteigt, sollte auch XMOS in Erwägung ziehen. Ich hätte in dem Fall ja lieber einfach langsamer gescannt, und damit auch langsamer ausgelesen. Spart eine Menge Ärger. Aber jedem das seine, soll keine Kritik sein.
Ich wollte mich nochmal zu Wort melden und alle Beitragenden danken. Also meine ursprüngliche Idee mit einer tragbaren handlichen Panoramakamera ist wohl aktuell nicht realisierbar. Dass das Konzept als solches funktioniert zeigen die kommerziellen Lösungen, von denen mir Roundshot am Besten gefällt. Die haben wirklich ein paar tolle Kameras im Angebot. Zum Nachbau aufgrund des erheblichen Aufwandes jedoch auch nicht wirklich verlockend. Realisierbar ist höchstens noch ein Eigenbau mit einem umgebauten Scanner, den ich wahrscheinlich bei Gelegenheit mal in Angriff nehme. Bin mal gespannt wann es die erste Digi-Pano-Knipse unter 500.- Euro gibt? In 5 Jahren? Gruss Andreas
Andreas Kr schrieb: > Bin mal gespannt wann es die erste Digi-Pano-Knipse unter 500.- Euro > gibt? Ähm, wozu? Mittelklasse-Digitalknipsen und -Smartphones beherschen heute schon sehr ansprechend Stitching (Aneinanderfügen von mehreren Einzelbildern mit Überlappungszonen) auf dem Gerät, ohne PC. Und wen, außer vielleicht Architekten und Werbedesignern, interessiert die verzeichnungsfreie Erstellung von (360°) Panoramen? Ich kenne sonst keinen. Außerdem ist die Handhabung für ein brauchbares Ergebnis nicht trivial.
@PanKnips Richtig! Schon Fotofilmlösungen á la Horizon, Noblex, Hasselblad & Co. (um nur einige zu nennen) mit rotierender Schlitzblende/Objektiv hatten es schwer. Nichtsdestotrotz gibt es da sehr hervorragende Ergebnisse wie man in renomierten Zeitschriften wie in der 'Geo' ab und ab sehen kann. Und das in einem Gerätepreissegment von EUR 1500 ... 6000, von steigenden Film- und Abzugskosten mal abgesehen.
Etwas spät, hab den Thread jetzt erst entdeckt: Hatte vor kurzem eine ähnliche Idee, hatte aber auch immer die guten alten Handscanner aus den 90ern im Hinterkopf. Mittlerweile gibt's die Dinger wieder, diesmal aber ohne Verbindung zum PC, sondern die Bilder werden einfach auf Speicherkarten gespeichert: http://www.easypix.eu/easyscan.html für um die 70,-€. Lt. Datenblatt mit einem Farbsensor ausgestattet, die einzelnen Zeilen werden anscheinend immer noch über die Kontaktwelle beim Drüberziehen getriggert. Grob geschätzt hat das Ding um die 5400 Pixel (600dpi bei ca. 9 inch) Meine Idee: den Scanner mit fest angebrachter Optik drehbar (Schrittmotor mit Getriebe) zu montieren und die Pulse an die Drehbewegung zu koppeln. Noch ein Andreas
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.