Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Gesucht: Programm zum automatischen Verkleinern von Bildern anhand bestimmter Kriterien

Frage Multimedia Grafik

Mitglied: hushpuppies

hushpuppies (Level 1) - Jetzt verbinden

25.11.2014 um 16:20 Uhr, 1415 Aufrufe, 6 Kommentare, 1 Danke

Hallo zusammen!

Erstmal hoffe ich, dass ich die richtige Kategorie für das Thema erwischt habe

Folgendes Problem:
Ich würde gern ein Laufwerk von einem Tool durchsuchen lassen, welches dann die gefundenen Bilder automatisch nach gewissen Kriterien bearbeitet.
Als Beispiel:
Wenn Bild xyz grösser ist als 1,5MB und die Auflösung größer als 1920x1080, dann verkleinere das Bild proportional auf 1920x1080 (oder der nächstmöglichen Größe bei der das Bild proportional bleibt).

Händisch geht das auf Grund der Menge und der komplexen Ordnerstruktur nicht oder nur mit *sehr* viel Aufwand, deshalb suche ich da eine Möglichkeit das möglichst automatisch zu erledigen.


Weiß da jemand zufällig Rat?
Mitglied: 114757
25.11.2014, aktualisiert um 16:48 Uhr
Einfacher Task mit
den ImageMagick Tools
http://www.imagemagick.org/Usage/resize/

Gruß jodel32
Bitte warten ..
Mitglied: Roadrunner0815
25.11.2014 um 19:23 Uhr
Ich glaube es gibt für Irwanview ein entsprechendes Plugin.
Bitte warten ..
Mitglied: Criemo
25.11.2014 um 20:07 Uhr
Hi,
Picasa kann das auch

VG
Criemo
Bitte warten ..
Mitglied: colinardo
25.11.2014, aktualisiert um 23:22 Uhr
Oder man nimmt nur die Powershell
(gibt jpeg-Bilder aus)
01.
function Resize-Image(){ 
02.
param( 
03.
    [parameter(mandatory=$true)][string]$imgPath, 
04.
    [string]$saveAs, 
05.
    [parameter(mandatory=$true)][int]$size, 
06.
    [ValidateRange(0,100)][int]$quality = 100 
07.
08.
    Add-Type -AssemblyName System.Drawing 
09.
     
10.
    if (!$saveAs){$saveAs = $imgPath} 
11.
 
12.
    $ext = [System.IO.Path]::GetExtension($imgPath) 
13.
    if ($ext -match "bmp|jpg|jpeg|gif|tif|tiff|png"){ 
14.
        $img = [System.Drawing.Bitmap]::FromFile($imgPath) 
15.
 
16.
        $percentWidth = [float]$size / [float]$img.Width 
17.
        $percentHeight = [float]$size / [float]$img.Height 
18.
        $percent = 1 
19.
        if ($percentHeight -lt $percentWidth){ 
20.
            $percent = $percentHeight 
21.
        }else{ 
22.
            $percent = $percentWidth 
23.
24.
        [int32]$newWidth = [int32]$img.Width * $percent 
25.
        [int32]$newHeight = [int32]$img.Height * $percent 
26.
 
27.
        [System.Drawing.Image]$newImage = New-Object System.Drawing.Bitmap $newWidth,$newHeight 
28.
        [System.Drawing.Graphics]$graphics = [System.Drawing.Graphics]::FromImage($newImage) 
29.
        $graphics.InterpolationMode = [System.Drawing.Drawing2D.InterpolationMode]::HighQualityBicubic 
30.
        $graphics.Drawimage($img,0,0,$newWidth,$newHeight) 
31.
        $img.Dispose() 
32.
 
33.
        # JPG Qalität festlegen 
34.
        [System.Drawing.Imaging.ImageCodecInfo]$jpgEncoder = [System.Drawing.Imaging.ImageCodecInfo]::GetImageDecoders() | ?{$_.FormatID -eq [System.Drawing.Imaging.ImageFormat]::jpeg.GUID} | select -First 1 
35.
        $myEncoder = [System.Drawing.Imaging.Encoder]::Quality 
36.
        $encoderParams = new-object System.Drawing.Imaging.EncoderParameters(1) 
37.
        $encoderParam = new-object System.Drawing.Imaging.EncoderParameter($myEncoder,85) 
38.
        $encoderParams.Param[0] = $encoderParam 
39.
        # -------------------- 
40.
        # Bild speichern 
41.
        $newImage.Save($saveAs,$jpgEncoder,$encoderParams) 
42.
        $newImage.Dispose() 
43.
44.
     
45.
46.
function Get-ImageSize(){ 
47.
    param( 
48.
        [parameter(mandatory=$true)][string]$imgPath 
49.
50.
    Add-Type -AssemblyName System.Drawing 
51.
    $img = [System.Drawing.Bitmap]::FromFile($imgPath) 
52.
    $w = $img.Width; $h = $img.Height 
53.
    $img.Dispose() 
54.
    return @($w,$h) 
55.
56.
 
57.
# Ordner festlegen 
58.
$ordner = "E:\Bilder" 
59.
 
60.
$maxSize = 1920 
61.
 
62.
# Dateien nach Kriterien filtern und in der Größe anpassen und speichern 
63.
dir $ordner -Filter *.jpg -recurse | %{ 
64.
    $s = Get-ImageSize $_.Fullname 
65.
    if (($s[0] -gt $maxSize -or $s[1] -gt $maxsize) -and $_.Length -gt 1.5MB){ 
66.
        write-host "Verkleinere Bild '$($_.Fullname)'" -ForegroundColor Green 
67.
        Resize-Image $_.Fullname -size $maxSize 
68.
69.
}
Grüße Uwe
Bitte warten ..
Mitglied: hushpuppies
27.11.2014 um 19:32 Uhr
Vielen Dank für die Tipps.

Ich versuche mal morgen umzusetzen - der Ansatz mit der PowerShell sieht sehr nett und flexibel aus, auch der Tipp mit ImageMagick klingt gut.

IrfanView hab ich schon probiert, das Problem dort ist, dass man nur ein Ausgabeverzeichnis wählen kann und es keine Option a la "schreib es wieder dorthin, wo es ursprünglich lag" gibt. Sprich man müsste sich durch alle Ordner hangeln und Ordner für Ordner konvertieren - bei gut 4.000 oder eher knapp 5.000 Ordner eher nicht so doll
Bitte warten ..
Mitglied: hushpuppies
07.05.2015 um 08:54 Uhr
Ich würde gern diese Frage nochmal vorkramen.
Ich habe mich mit den vorgeschlagenen Methoden beschäftigt, musste aber feststellen, dass mir da einfach die programmiertechnischen Grundlagen fehlen um das auf meinen Anwendungsfall anzupassen.

Daher nochmal die Frage, ob jemand ein "fertiges" Programm kennt, welches in der Lage ist sich rekursiv durch Ordner zu wühlen, Bilder einzulesen und anhand von einfachen Kriterien wie Größe oder Maße ggf. zu verkleinern und an der selben Stelle wieder abzuspeichern.

Es darf auch gerne etwas kosten auch wenn mir ein open source oder freeware Programm natürlich lieber wäre
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Grafik
gelöst Suche Programm um Bilder zu verkleinern (10)

Frage von fox14ch zum Thema Grafik ...

Windows Server
Backup-Programm mit SFTP Funktion gesucht (4)

Frage von hijacker99 zum Thema Windows Server ...

Grafik
gelöst Grafiken Tabellen erstellen, Programm gesucht (6)

Frage von InvisibleQuantum zum Thema Grafik ...

LAN, WAN, Wireless
Software für Backup oder Datensynchronisation über WAN gesucht (3)

Frage von Rubiks zum Thema LAN, WAN, Wireless ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (13)

Frage von Motte990 zum Thema Microsoft Office ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...