Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
browse a python prog on intranet
#1
A thermal camera is installed on a raspberry pi and running on a python program smoothly.
The live video/image will be posted on a new frame when running the python program.

More, the raspberry pi is collected in my home intranet with other devices, such as windows pc and smartphone.

All i want to go is watch the live video/image on the intranet by others device; or say browse the python program with web browser on other devices on intranet. I got some basic experience on programming but very poor about networking. And i try to make a simple "helloworld" webpage by flask.

do you think it's a simple question ? i just need to combine the following two python programs into one, and export in by flask?

from Adafruit_AMG88xx import Adafruit_AMG88xx
import pygame
import os
import math
import time

import numpy as np
from scipy.interpolate import griddata

from colour import Color

#low range of the sensor (this will be blue on the screen)
MINTEMP = 26

#high range of the sensor (this will be red on the screen)
MAXTEMP = 32

#how many color values we can have
COLORDEPTH = 1024

os.putenv('SDL_FBDEV', '/dev/fb1')
pygame.init()

#initialize the sensor
sensor = Adafruit_AMG88xx()

points = [(math.floor(ix / 8), (ix % 8)) for ix in range(0, 64)]
grid_x, grid_y = np.mgrid[0:7:32j, 0:7:32j]

#sensor is an 8x8 grid so lets do a square
height = 240
width = 240

#the list of colors we can choose from
blue = Color("indigo")
colors = list(blue.range_to(Color("red"), COLORDEPTH))

#create the array of colors
colors = [(int(c.red * 255), int(c.green * 255), int(c.blue * 255)) for c in colors]

displayPixelWidth = width / 30
displayPixelHeight = height / 30

lcd = pygame.display.set_mode((width, height))

lcd.fill((255,0,0))

pygame.display.update()
pygame.mouse.set_visible(False)

lcd.fill((0,0,0))
pygame.display.update()

#some utility functions
def constrain(val, min_val, max_val):
    return min(max_val, max(min_val, val))

def map(x, in_min, in_max, out_min, out_max):
  return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min

#let the sensor initialize
time.sleep(.1)
	
while(1):

	#read the pixels
	pixels = sensor.readPixels()
	pixels = [map(p, MINTEMP, MAXTEMP, 0, COLORDEPTH - 1) for p in pixels]
	
	#perdorm interpolation
	bicubic = griddata(points, pixels, (grid_x, grid_y), method='cubic')
	
	#draw everything
	for ix, row in enumerate(bicubic):
		for jx, pixel in enumerate(row):
			pygame.draw.rect(lcd, colors[constrain(int(pixel), 0, COLORDEPTH- 1)], (displayPixelHeight * ix, displayPixelWidth * jx, displayPixelHeight, displayPixelWidth))
	
	pygame.display.update()


from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
	return 'Hello, World!'
p.s.: sorry to admin buddy for repost question, but i make the question more clear this time, please delete the last post and keep this one. And sorry again i can't delete or coorrect the original one. sorry.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  browse a python program on intranet with other device joeydream 0 1,368 May-18-2020, 03:28 AM
Last Post: joeydream
  Can I browse the net using python? omar 3 2,985 Apr-06-2018, 06:54 AM
Last Post: pythonn_cat_user_name

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020