コード例 #1
0
    def get_frame(self):
        success, image = self.video.read()
        if success:
            # We are using Motion JPEG, but OpenCV defaults to capture raw images,
            # so we must encode it into JPEG in order to correctly display the
            # video stream.
            (h, w, d) = image.shape
            # w:h == 9:16
            width = math.floor((9 * h / 16) / 2)
            stx = math.floor(w / 2) - width
            endx = math.floor(w / 2) + width
            img = image[0:h, stx:endx]

            if not self.initialized:
                # Add silouhette
                gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
                resized = cv2.resize(self.silouhette, (endx - stx, h))
                head_x = math.floor((endx - stx) / 2)
                head_y = math.floor(h * 140 / 720)

                faces = face_cascade.detectMultiScale(gray, 1.3, 5)
                if len(faces) > 0:
                    (x, y, wf, hf) = faces[0]
                    x_c = math.floor(x + wf / 2)
                    y_c = math.floor(y + hf / 2)
                    # print(abs(head_x-x)+abs(head_y-y))
                    if abs(head_x - x_c) + abs(head_y - y_c) < 50:
                        if wf < (endx - stx) / 2:
                            self.initTimer += 1
                            cv2.rectangle(img, (x, y), (x + wf, y + hf),
                                          (0, 255, 0), 2)
                        else:
                            cv2.rectangle(img, (x, y), (x + wf, y + hf),
                                          (0, 255, 255), 2)
                    else:
                        cv2.rectangle(img, (x, y), (x + wf, y + hf),
                                      (0, 0, 255), 2)

                if self.initTimer >= 100:
                    self.shirt = Shirt(img)
                    self.initialized = True

                img = cv2.add(img, resized)
            else:
                # Can colorize if needed
                if self.colorize and self.shirt is not None:
                    img = self.shirt.change_color(img, self.color)
            ret, jpeg = cv2.imencode('.jpg', img)
            return jpeg.tobytes()
        else:
            return None
コード例 #2
0
def main():

    shirt_one = Shirt('red', 'S', 'short-sleeve', 15)
    shirt_two = Shirt('yellow', 'M', 'long-sleeve', 20)

    print(shirt_one.get_price())
    # change price of shirt one to 30
    shirt_one.set_price(30)
    print(shirt_one.get_price())

    # print shirt two color
    print(shirt_two.get_color())
コード例 #3
0
from shirt import Shirt

new_shirt = Shirt('Red', 'M', 'short sleeve', 50)

print(new_shirt.color)
print(new_shirt.size)
print(new_shirt.style)

# change price method
new_shirt.change_price(32)
print(new_shirt.price)

# discount method
print(new_shirt.discount(0.2))

tshirt_collection = []

shirt_one = Shirt('red', 'S', 'short-sleeve', 15)
short_two = Shirt('blue', 'M', 'long-sleeve', 35)
short_three = Shirt('yellow', 'L', 'short-sleeve', 20)

tshirt_collection.append(shirt_one)
tshirt_collection.append(short_two)
tshirt_collection.append(short_three)

for i in range(len(tshirt_collection)):
    print(tshirt_collection[i].color)
コード例 #4
0
from shirt import Shirt

shirt_one = Shirt('red', 'S', 'Full-sleeve', 15)
shirt_two = Shirt('Blue', 'M', 'Half sleeve', 10)

#print(shirt_one.price)
#print(shirt_two.price)

#shirt_two.change_price(20)
#print(shirt_two.price)

#shirt_one.price = 18
#shirt_one.style = 'tank'

shirt_one = Shirt('yellow', 'M', 'long-sleeve', 15)
print(shirt_one.get_price())
shirt_one.set_price(10)
コード例 #5
0
class VideoCamera(object):
    def __init__(self):
        # Using OpenCV to capture from device 0. If you have trouble capturing
        # from a webcam, comment the line below out and use a video file
        # instead.
        self.video = cv2.VideoCapture(0)
        # If you decide to use video.mp4, you must have this file in the folder
        # as the main.py.
        # self.video = cv2.VideoCapture('video.mp4')
        self.initialized = False
        self.initTimer = 0
        self.silouhette = cv2.imread('silou.png')

        self.shirt = None
        self.colorize = False
        self.color = 0

        watched_dir = os.path.split("/tmp/over_here_arnaud")[0]
        patterns = ["/tmp/over_here_arnaud"]
        event_handler = MyEventHandler(self, patterns)
        self.observer = Observer()
        self.observer.schedule(event_handler, watched_dir, recursive=True)
        self.observer.start()

    def __del__(self):
        self.video.release()
        self.observer.stop()

    def get_frame(self):
        success, image = self.video.read()
        if success:
            # We are using Motion JPEG, but OpenCV defaults to capture raw images,
            # so we must encode it into JPEG in order to correctly display the
            # video stream.
            (h, w, d) = image.shape
            # w:h == 9:16
            width = math.floor((9 * h / 16) / 2)
            stx = math.floor(w / 2) - width
            endx = math.floor(w / 2) + width
            img = image[0:h, stx:endx]

            if not self.initialized:
                # Add silouhette
                gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
                resized = cv2.resize(self.silouhette, (endx - stx, h))
                head_x = math.floor((endx - stx) / 2)
                head_y = math.floor(h * 140 / 720)

                faces = face_cascade.detectMultiScale(gray, 1.3, 5)
                if len(faces) > 0:
                    (x, y, wf, hf) = faces[0]
                    x_c = math.floor(x + wf / 2)
                    y_c = math.floor(y + hf / 2)
                    # print(abs(head_x-x)+abs(head_y-y))
                    if abs(head_x - x_c) + abs(head_y - y_c) < 50:
                        if wf < (endx - stx) / 2:
                            self.initTimer += 1
                            cv2.rectangle(img, (x, y), (x + wf, y + hf),
                                          (0, 255, 0), 2)
                        else:
                            cv2.rectangle(img, (x, y), (x + wf, y + hf),
                                          (0, 255, 255), 2)
                    else:
                        cv2.rectangle(img, (x, y), (x + wf, y + hf),
                                      (0, 0, 255), 2)

                if self.initTimer >= 100:
                    self.shirt = Shirt(img)
                    self.initialized = True

                img = cv2.add(img, resized)
            else:
                # Can colorize if needed
                if self.colorize and self.shirt is not None:
                    img = self.shirt.change_color(img, self.color)
            ret, jpeg = cv2.imencode('.jpg', img)
            return jpeg.tobytes()
        else:
            return None

    def set_color(self, color):
        self.colorize = True
        tmp = color[4:-1]
        rgb = np.array(tmp.split(','))
        print(rgb)
        hsv = cv2.cvtColor(rgb, cv2.COLOR_RGB2HSV)
        self.color = hsv[0]
        print("color", self.color)
コード例 #6
0
from shirt import Shirt

shirt_one = Shirt('red', 'M', 'long_sleeved', 45)
shirt_two = Shirt('orange', 'S', 'Short_sleeved', 30)

print(shirt_one.price)
print(shirt_one.color)

shirt_two.change_price(45)
print(shirt_two.price)
print(shirt_two.color)
コード例 #7
0
from shirt import Shirt

shirt_one = Shirt('red', 'L', 'long-sleeve', 25)
print(shirt_one.price)
shirt_one.price = 10
print(shirt_one.price)
shirt_one.price = 20
print(shirt_one.price)
shirt_one.color = 'yellow'
print(shirt_one.color)
shirt_one.size = 'M'
print(shirt_one.size)
shirt_one.style = 'short_sleeve'
print(shirt_one.style)
コード例 #8
0
### TODO:
#    - import the Shirt class from the shirt.py file
###

from shirt import Shirt

### TODO:
#    - insantiate a shirt object with the following characteristics:
#        - color red, size S, style long-sleeve, and price 25
#    - store the object in a variable called shirt_one
#
#
###
shirt_one = Shirt('red', 'S', 'long-sleeve', 25)

### TODO:
#     - print the price of the shirt using the price attribute
#     - change the price of the shirt to be 10
#     - print the price of the shirt using the price attribute
#     - print the price of the shirt with a 12% discount
#
###
print(shirt_one.price)
shirt_one.change_price(10)
print(shirt_one.price)
print(shirt_one.discount(.12))

### TODO:
#
#    - instantiate another object with the following characteristics:
# .       - color orange, size large, style short sleeve, and price 10
from shirt import Shirt
from shirt import Jean

shirt_one = Shirt('orange', 'S', 'long sleeve', 45)
shirt_two = Shirt('red', 'XL', 'short sleeve', 30)

print(shirt_one.color)
print(shirt_two.price)

shirt_two.change_price(23)
print(shirt_two.price)

print(shirt_one.discount(.1))

shirt_one.color = 'purple'
shirt_one.size = 'L'
shirt_one.price = 38

jean_one = Jean('red', 'L', 70)
print(jean_one.color)
print(jean_one.size)
print(jean_one.price)
コード例 #10
0
from arduinoController import ArduinoController
from belt import Belt
from mechanicalClaw import MechanicalClaw
from trapdoors import Trapdoors

board = Arduino('/dev/ttyACM0')

belt = Belt(board)
claw = MechanicalClaw(board)
trapdoors = Trapdoors(board)

controller = ArduinoController(board, claw, belt, trapdoors)

# Erase the example and insert your shirt list
shirtDisorderedList = [
    Shirt("big", "blue"),  # a BIG and BLUE shirt
    Shirt("small", "blue"),  # a SMALL and BLUE shirt
    Shirt("big", "red"),  # a BIG and RED shirt
    Shirt("small", "red"),  # Notice that the constructor
    Shirt("big", "yellow"),  # is built by two arguments
    Shirt("small", "yellow")  # first the color, then the size
]

palletizer = Palletizer(shirtDisorderedList)
shirtsDestiny = []
currentSize = ""

while palletizer.dynamicShirtList:  # While there is any shirt in the provided list that wasn't placed and processed
    palletizer.separateByModel()
    shirtsDestinys = palletizer.getTrapdoorsOrder()
コード例 #11
0
from shirt import Shirt

shirt_1 = Shirt('black', 'M', 'Full-Sleeves', 100)

print(shirt_1.price)
コード例 #12
0
ファイル: example.py プロジェクト: tunde99/TUTORIALS
from shirt import Shirt

if __name__ == '__main__':
    shirt_1 = Shirt('red', 'M', 'long_sleeved', 55)
    shirt_2 = Shirt('orange', 'S', 'short_sleeved', 30)

    print(shirt_1.get_price())
    print(shirt_2.get_price())

    print(shirt_1.discount(0.81))

    shirt_1.change_price(60)
    print(shirt_1.discount(0.81))
コード例 #13
0
ファイル: main.py プロジェクト: jezsej/python-oop
from shirt import Shirt
from pants import Pants


new_shirt = Shirt("blue","14","Polo",45)
new_pants = Pants ("blue","14","Polo",45)

print(new_shirt._color)
print(new_pants._price)
コード例 #14
0
### TODO:
#    - import the Shirt class from the shirt.py file
###

from shirt import Shirt

### TODO:
#    - insantiate a shirt object with the following characteristics:
#        - color red, size S, style long-sleeve, and price 25
#    - store the object in a variable called shirt_one
#
#
###
shirt_one = Shirt("red", "S", "long-sleeve", 25)

### TODO:
#     - print the price of the shirt using the price attribute
#     - change the price of the shirt to be 10
#     - print the price of the shirt using the price attribute
#     - print the price of the shirt with a 12% discount
#
###
print(shirt_one.price)
shirt_one.change_price(10)
print(shirt_one.price)
print(shirt_one.discount(0.12))

### TODO:
#
#    - instantiate another object with the following characteristics:
# .       - color orange, size large, style short sleeve, and price 10
コード例 #15
0
from shirt import Shirt

shirt_one = Shirt('orange', 'M', 'short sleeve', 25)
shirt_two = Shirt('red', 'S', 'short sleeve', 15)
shirt_three = Shirt('purple', 'XL', 'short sleeve', 10)

print(shirt_one.price)
print(shirt_two.color)

shirt_three.change_price(45)
print(shirt_three.price)

shirt_three.convert_euros(45)
print(shirt_three.price)
コード例 #16
0
ファイル: example.py プロジェクト: kalibrahim/udacity_ds_oop
from shirt import Shirt

shirt_one = Shirt('red', 'M', 'long_sleeve', 45)
shirt_two = Shirt('orange', 'S' ,'short_sleeved', 30)

print(shirt_one.price)
print(shirt_one.color)

shirt_two.change_price(45)
print(shirt_two.price)


shirt_one.color = 'yellow'
shirt_one.size = 'L'
shirt_one.price = 43
コード例 #17
0
ファイル: example.py プロジェクト: sidaker/dq
from shirt import Shirt
print("Hello")

sh_1 = Shirt('red','S','short sleeve', 15)
sh_2 = Shirt('orange','L','long sleeve', 30)


print(sh_1.price)
print(sh_2.price)


print(sh_3.price)
from shirt import Shirt

shirt_one = Shirt('red', 'M', 'long_sleeved', 45)
shirt_two = Shirt('orange', 'S', 'short_sleeved', 30)

print(shirt_two.price)
print(shirt_one.color)
コード例 #19
0
from shirt import Shirt

new_shirt = Shirt('red', 's', 'short sleeve', 45)
orange_shirt = Shirt('orange', 'L', 'short sleeve', 15)

print(new_shirt.__doc__)

# print

print(new_shirt.color)
print(new_shirt.size)
print(new_shirt.style)
print(new_shirt.price)

new_price = new_shirt.change_price(10)
print(new_shirt.price)

new_discount = new_shirt.discount(0.3)
print(new_discount)
コード例 #20
0
from shirt import Shirt  # import Shirt class from python file

shirt_one = Shirt('red', 'M', 'long sleeve', 35)
shirt_two = Shirt('red', 'S', 'short sleeve', 30)

print(shirt_one.price)
print(shirt_two.price)

shirt_two.price_change(45)

print(shirt_one.price)
print(shirt_two.price)

# alternatively, we can chage the attribute, like price using accessing attributes
# this approach has its own drawbacks
# so, it's recommended to change the attribute value with method
# since it brings us more flexibility, when, for example, our measure units change
# we can specify the change once inide class method and use this afterwards

shirt_one.color = 'yellow'
shirt_two.size = 'L'

print(shirt_one.color)
print(shirt_two.size)
コード例 #21
0
#!/usr/bin/env python
# coding: utf-8



from shirt import Shirt

shirt_one=Shirt('Red','M','long-sleeved',45)
shirt_two=Shirt('orange','S','short-sleeved',30)



print(shirt_one.color)
print(shirt_one.price)


shirt_two.change_price(45) # price change using method
print(shirt_two.price)


# How to access and change attribute values in python class

#  Shirt class has method to change shirt price
# Values can be changed either by assigning value or by  using method


shirt_one.color='Green'
print(shirt_one.color)


shirt_one.size='L'
コード例 #22
0
ファイル: example.py プロジェクト: Olamyyde/programs
from shirt import Shirt

shirt1 = Shirt('red', 'M', 'long_sleeved', 43)
shirt2 = Shirt('orange', 'S', 'short_sleeved', 30)

print(shirt1.price)
print(shirt2.color)
print(shirt2.style)

shirt2.change_price(45)

print(shirt2.price)