Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin

Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten
Autor
Nachricht
slayer616_
Coder
Coder

Anmeldedatum: 16.05.2007
Beiträge: 90

Kompression von Bildern?
Verfasst am: 18.03.2008, 23:26

Ich versuche eine VNC-Funktion einzubauen. Dateitransfer usw. fertig jedoch hat mir die Größe der Captures nicht gefallen. So habe ich jpeg compression eingebaut;zwar sind die Bilder nur noch 120-150 kb groß aber ich möchte sie weiter verkleinern...ich habe mir andere RATs angeschaut und habe gemerkt das sie nur das vom server laden was sich im Desktop ändert. Genau das möchte ich auch realisieren aber verstehe gar nicht wie man überhaupt so etwas hinbekommt. Hat jemand irgendeine Idee? Oder ander Methoden meine Bilder unter 100 kb zu schrumpfen.....
_________________
 
Jolo_
Coder
Coder



Anmeldedatum: 20.03.2007
Beiträge: 210


Verfasst am: 18.03.2008, 23:34

ich hab was zum erkennen der veränderten pixel gefunden:

Code:
'Bildvergleichsfunktion von C. Arnold
'Auch wenn es unkommentiert ist, müsste man es verstehen.

Private Function PicCompare(Pic1 As PictureBox, Pic2 As PictureBox) As Single
   
    Dim i, j As Integer
   
    Dim Color1, Color2 As Long
   
    Dim TheColors1 As RGBColor
    Dim TheColors2 As RGBColor
   
    Dim Agree1, Agree2, Agree3, AllCorrect As Single
    Dim Agree1Correct, Agree2Correct, Agree3Correct As Boolean
   
    AllCorrect = 0
    Picture3.BackColor = vbWhite
   
    For i = 0 To 320
        For j = 0 To 240
            If i / 2 = Round(i / 2, 0) Then
                If j / 2 = Round(j / 2, 0) Then
                    Color1 = GetPixel(Pic1.hdc, i, j)
                    Color2 = GetPixel(Pic2.hdc, i, j)
                    TheColors1 = Long2RGB(Color1)
                    TheColors2 = Long2RGB(Color2)
                    If Color1 <> Color2 Then
                        If TheColors1.Rot < 1 Then TheColors1.Rot = 1
                        If TheColors1.Gelb < 1 Then TheColors1.Gelb = 1
                        If TheColors1.Blau < 1 Then TheColors1.Blau = 1
                        If TheColors2.Rot < 1 Then TheColors2.Rot = 1
                        If TheColors2.Gelb < 1 Then TheColors2.Gelb = 1
                        If TheColors2.Blau < 1 Then TheColors2.Blau = 1
                       
                        Agree1 = (TheColors1.Rot / TheColors2.Rot) * 100
                        Agree2 = (TheColors1.Gelb / TheColors2.Gelb) * 100
                        Agree3 = (TheColors1.Blau / TheColors2.Blau) * 100
                       
                        If Agree1 > 75 And Agree1 < 125 Then
                            Agree1Correct = True
                        Else
                            Agree1Correct = False
                        End If
                       
                        If Agree2 > 75 And Agree2 < 125 Then
                            Agree2Correct = True
                        Else
                            Agree2Correct = False
                        End If
                       
                        If Agree3 > 75 And Agree3 < 125 Then
                            Agree3Correct = True
                        Else
                            Agree3Correct = False
                        End If
                       
                        If Agree1Correct = False And Agree2Correct = False And Agree3Correct = False Then
                            AllCorrect = AllCorrect + 1
                            On Error Resume Next
                            SetPixel Picture3.hdc, i, j, vbBlue
                            On Error GoTo 0
                        End If
                    End If
                End If
            End If
        Next j
    Next i
   
    PicCompare = AllCorrect
End Function


habs noch nicht richtig angeschaut und kann deswegen auch nicht sagen ob es funktionier Wink

//Edit: Ich hab was bei planet soruce code gefunden Wink das war eig für ne webcam gedacht aber ich hab schnell anstatt dem bild der webcam den screen eingebaut ^^ die webcam geht trotzdem an... aber das hilft dir sicherlich weiter
Mr. Green

http://uploaded.to/?id=h0crdu

MfG Jolo Wink
 
slayer616_
Coder
Coder

Anmeldedatum: 16.05.2007
Beiträge: 90


Verfasst am: 19.03.2008, 10:29

werde mir sie anschauen.... THX Smile
 
ZiG_
Überflieger
Überflieger

Anmeldedatum: 07.03.2007
Beiträge: 1248


Verfasst am: 19.03.2008, 19:19

Bild als bmp lassen und zippen.
Ist kleiner als wenn du es in jpg umwandelst.
_________________
Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde)
 
slayer616_
Coder
Coder

Anmeldedatum: 16.05.2007
Beiträge: 90


Verfasst am: 20.03.2008, 11:32

ist aber umständlicher, braucht mehr zeit und macht programm größer...
 
ZiG_
Überflieger
Überflieger

Anmeldedatum: 07.03.2007
Beiträge: 1248


Verfasst am: 20.03.2008, 12:01

Wird aber oft bei Trojanern eingesetzt.
Gegen eine Erkennung welche Bereiche sich verändert haben und dann nur diese zu übertragen spricht ja nichts und ich hab auch nichts dagegen gesagt.

Und das ist ja wohl Blödsinn, dass es umständlicher ist, mehr Zeit kostet und das Programm größer macht.
In Vergleich zu was?
Zu der JPG Kompression die man einbauen muß, der automatischen Erkennung und der längeren Übertragung?

Probier einfach aus was du machen willst.
War ja lediglich ein Tipp.
_________________
Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde)
 
slayer616_
Coder
Coder

Anmeldedatum: 16.05.2007
Beiträge: 90


Verfasst am: 20.03.2008, 13:41


war nicht böse gemeint... Crying or Very sad
_________________


 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten

Tags: kompression, bildern

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge CSS server connecten 825 18.06.2007, 16:32
Keine neuen Beiträge Multi User Chat Server Rückantwort! 909 13.06.2007, 16:38
Keine neuen Beiträge Server - Client 693 09.06.2007, 21:25
Keine neuen Beiträge Server BIuld Funtkion 489 19.05.2007, 22:41
Keine neuen Beiträge Server und client? 516 12.04.2007, 09:51
 



[ Time: 0.2769s ][ Queries: 105 (0.0236s) ][ GZIP on - Debug on ]